【发布时间】:2015-09-10 18:35:14
【问题描述】:
我的表格有一列以逗号分隔(最终也是一个空格)数字;这些数字可以有 5 到 12 位数字。
9645811, 9646011,9645911, 9646111
或
41031, 41027, 559645811, 5501006009
我需要选择该列包含以给定数字开头的数字的行。在上面的例子中,只需要选择第一个。到目前为止我尝试过的:
SELECT myfield FROM mytable
WHERE myfield REGEXP ('(^|[,\s]+)(96458[\d]*)([,\s]*|$)');
但是查询没有返回任何结果。我只想选择第一行,其中有一个以 96458 开头的数字。
任何帮助将不胜感激:)
【问题讨论】:
-
你的正则表达式似乎没问题。
-
WHERE SUBSTRING_INDEX(myfield ,',',1) LIKE '96458%'