doris用catalog访问各种数据源中文正则

1、'^[\u4e00-\u9fa5]+$'

'^[\u4e00-\u9fa5]+$' 在mysql数据源可以匹配到数据,但是经常会报下面报错。而且oracle、达梦、pg很多数据库都不能正确匹配出洪文。

报错1

detailMessage = (disaggregated-cluster-cg1-0.disaggregated-cluster-cg1.doris-cluster.svc.cluster.local.)[INTERNAL_ERROR]Invalid regex expression: ^[\u4e00-\u9fa5]+$

报错2

 detailMessage = (disaggregated-cluster-cg1-0.disaggregated-cluster-cg1.doris-cluster.svc.cluster.local.)[INTERNAL_ERROR]JdbcExecutorException: resultSet to get next error:  | CAUSED BY: SQLException: The regular expression contains an [x-y] character range where x comes after y.

报错都是偶尔报错,可能执行5次,报错一次。网上解释是可能doris下推正则有问题,特别是doris引擎有多个节点,就更加容易报错

         select * from test.test_a_100w
         where  name not regexp '^[\u4e00-\u9fa5]+$' 

2、^[\\x{4e00}-\\x{9fa5}]+$

报错减少,但是mysql不能正确匹配中文。 oracle,达梦、pg等多种数据库可以正常匹配正文

     select * from test.test_a_100w
         where  name not regexp '^[\\x{4e00}-\\x{9fa5}]+$'  limit 10

3、 '^[一-龥]+$' 

试了mysql、达梦、hanna、pg、sqlserver等多种数据源,都能够正常匹配正文,而且不报错


     select EMP_ID as data_id,* from cecece.SCHEMA01.EMPLOYEES where  EMP_NAME not regexp '^[一-龥]+$' 

结论:

doris使用 '^[一-龥]+$' 匹配中文

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暖兔兔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值