GBase 8a集群查询是否包含汉字的方法

本文介绍GBase 8a集群,通过REGEXP检测是否包含汉字的方法,仅限于UTF8mb4字符集。

环境

gbase> select * from tc;
+--------------+
| name         |
+--------------+
| First        |
| 南大通用     |
| 123          |
| AAAA         |
| 中国         |
| 汉           |
| 666中国888   |
+--------------+
7 rows in set (Elapsed: 00:00:00.00)

检测方法

如下2种均可。

其中第二种,直接在SQL里输入的中文,要考虑到字符集问题。

第一种则直接用的UTF8mb4编码,其中包括和中括号和两个汉字之间的横杠。

gbase> select * from testdb.tc where name REGEXP unhex('5be4b8802de9bea55d');
+--------------+
| name         |
+--------------+
| 南大通用     |
| 中国         |
| 汉           |
| 666中国888   |
+--------------+
4 rows in set (Elapsed: 00:00:00.01)

gbase> select * from tc where name REGEXP '[一-龥]';
+--------------+
| name         |
+--------------+
| 南大通用     |
| 中国         |
| 汉           |
| 666中国888   |
+--------------+
4 rows in set (Elapsed: 00:00:00.00)