我有一张桌子phone
柱子。其中的电话看起来像 +1 (123) 456-3780。
如果用户在搜索字段“35”中输入,我应该向他显示所有拥有手机的用户:
+3 (534) 000-1010
+1 (350) 000-9090
+1 (003) 534-2343
+1 (001) 223-5323 etc.
我尝试过做类似的事情
SELECT * FROM `mytable` WHERE `phone` LIKE '%3%5'
但这不是最好的解决方案,因为查询得到类似+3(000)000-500的其他电话。
我想使用 RLIKE 或类似的东西,但不知道如何创建所需的正则表达式以及它应该是什么样子?
你需要一个[() -]*
每个输入字符之间:
SELECT * FROM `mytable`
WHERE `phone` REGEXP '3[() -]*5'
这允许标点符号存在于您的数字“字符串”中,但没有其他内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)