PostgreSQL过滤出中文数据
筛选中文内容
匹配一个或多个非中文字符
SELECT * FROM table1 WHERE field1 ~ '[^\u4e00-\u9fa5]+';
[\u4e00-\u9fa5]
表示匹配中文字符,加上前面的取反符号 ^
即表示匹配不是中文字符,+
表示一个或多个。\u4e00-\u9fa5
是中文字符的 Unicode 范围。
如果想筛选字段不包含中文可以参考下面语句:
SELECT * FROM table1 WHERE NOT (field1 ~ '[\u4e00-\u9fa5]');
筛选只包含中文的字段
SELECT * FROM table1 WHERE NOT (field1 ~ '[^\u4e00-\u9fa5]');