正则匹配问题

来源:3-1 数据操作语言:条件查询(一)

灵魂百度

2021-02-06 21:43:25

问题描述:

在视屏20:48,我的那个正则表达式也书写正确,并且t_emp表中保存了陈浩的信息,使用正则表达式:

SELECT 
ename,comm,sal
FROM t_emp WHERE comm IS NOT NULL
AND sal BETWEEN 1000 AND 3000
AND ename REGEXP "^[\\u4e00-\\u9fa5]{2,4}$";

不能查询到陈浩。但是使用模糊查询可以查询到,模糊查询如下:

SELECT ename FROM t_emp WHERE ename LIKE "陈%";
#得到结果如下
ename
陈浩




写回答

1回答

好帮手慕阿满

2021-02-07

同学你好,这边测试是可以找到的,如:

http://img.mukewang.com/climg/601f527a09154f5e04630195.jpg

这个可能和MySQL版本有关,问一下同学的MySQL版本是多少,如果是5的版本,建议使用如下语句查询:

SELECT 
ename,comm,sal
FROM t_emp WHERE comm IS NOT NULL
AND sal BETWEEN 1000 AND 3000
AND HEX(ename) REGEXP "e[4-9][0-9a-f]{4}";

祝学习愉快~

0

0 学习 · 16556 问题

查看课程