我有以下查询:
SELECT *
FROM `shop`
WHERE `name` LIKE '%[0-9]+ store%'
我想匹配显示 '129387 store'
的字符串,但上面的正则表达式不起作用。这是为什么?
最佳答案
使用REGEXP运算符而不是 LIKE 运算符
试试这个:
SELECT '129387 store' REGEXP '^[0-9]* store$';
SELECT * FROM shop WHERE `name` REGEXP '^[0-9]+ store$';
输出
| NAME |
|--------------|
| 129387 store |
关于mysql - SQL中的正则表达式检测一个或多个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20794860/