使用MySQL LIKE仅查找以数字开头的字符串

时间:2012-06-15 12:56:18

标签: mysql

如何在表格中找到第一个字符为数字的字符串?

我正在使用MySQL LIKE如下

SELECT   DISTINCT label_no_country
FROM     releases
WHERE    label_no_country LIKE '$letter%'  
ORDER BY label_no_country

其中$letter是A-Z之间的字母(取决于输入)

因此,如果$letter == 'A',则会显示第一个字母为A的所有条目。

如何运行此查询以便显示以数字开头的记录?

e.g。

1st record

喝彩!

2 个答案:

答案 0 :(得分:23)

您可能想要使用正则表达式:

SELECT DISTINCT label_no_country FROM releases 
WHERE label_no_country 
REGEXP '^[0-9]'

有关详细信息,请参阅MySQL docs

答案 1 :(得分:0)

WHERE label_no_country >= '0' AND label_no_country <= '9zzzzzzzzzzzzz' -- Insert as many z:s as the field can hold

修改 或者更好, 只需在整理顺序中输入9之后的字符:

WHERE label_no_country >= '0' AND label_no_country < ':' -- assuming : is the character after 9 in your collating sequence