我有一个随机varchar数字/字母的表格如下:
1a
101a
101b
101c
11b
14a
14b
14c
14z
108a
108b
Run Code Online (Sandbox Code Playgroud)
我想SELECT * FROM TABLE WHERE VAR = [SPECIFIC NUMBER]/FOLLOWING ANY LETTER.
例如,我使用这种错误的方法,它选择从1开始的所有内容:
SELECT *
FROM `table`
WHERE var LIKE '1%'
Run Code Online (Sandbox Code Playgroud)
这给了我以上所有的例子,因为所有这些都以1开头.我希望这只选择: 1a
Kon*_*rak 10
使用 REGEXP
SELECT *
FROM `table`
WHERE var REGEXP '^1[[:alnum:]]'
Run Code Online (Sandbox Code Playgroud)
正则表达式解释:
^ 用于开始字符串1 为您的具体号码[[:alnum:]]对于一个alfanumeric字符 - 如果你严格要字母,请alpha在这里使用.例如SELECT *
FROM `table`
WHERE var REGEXP '^1[[:alpha:]]'
Run Code Online (Sandbox Code Playgroud)