Mysql查询选择仅包含字母字符的列

时间:2014-03-11 18:14:27

标签: mysql sql

我需要显示mysql数据库中的记录,其中特定列只有字母表。

例如,

表名:数据

 column
 abcde
 12345
 xyz
 123

所以输出应该只是abcde和xyz。 到目前为止,我尝试使用模式匹配,但没有运气

这里有什么用处    SELECT * FROM listing WHERE Zip LIKE '[^a-zA-Z]'

4 个答案:

答案 0 :(得分:8)

试试此代码

SELECT * FROM listing WHERE Zip REGEXP  '^[A-z]+$'

答案 1 :(得分:2)

试试regexp:

SELECT * FROM listing WHERE Zip REGEXP '^[a-zA-Z.]+$'

答案 2 :(得分:0)

您也可以尝试此代码

SELECT * FROM listing WHERE Zip NOT  LIKE '%[0-9]%'

答案 3 :(得分:-1)

将RLIKE用于正则表达式:SELECT * FROM listing WHERE Zip RLIKE '[^a-zA-Z]*$'

此外," ^"你的正则表达式否定了类模式。如果您尝试将其用作"前线"锚,它在错误的地方,你的正则表达式返回拉链中除a-zA-Z以外的东西。如果您想要只有alpha的条目,请移动" ^"方括号外:SELECT * FROM listing WHERE Zip RLIKE '^[a-zA-Z]*$'