Pet*_*ter 2 mysql select numbers where-clause
如何在 MySQL 中选择非数字的行?
SELECT *
FROM `TABLE`
WHERE `Column_B` <> Number
Run Code Online (Sandbox Code Playgroud)
我知道,这是一个愚蠢的问题,但我还没有找到解决方案。Column_B 是 varchar(3)。
试试这个sqlfiddle..
http://sqlfiddle.com/#!2/17f28/1
SELECT * FROM Table1 WHERE col NOT REGEXP '^[0-9]+$'
如果您想要匹配real numbers( floats) 而不是整数,则需要处理上述情况,以及模式介于 0 和 1 之间(即 0.25)的情况,以及模式的小数部分为 0 的情况。 (即2.0)。当我们这样做时,我们将添加对整数前导零的支持(即 005):
^0*[1-9][0-9]*(\.[0-9]+)?|0+\.[0-9]*[1-9][0-9]*$
Run Code Online (Sandbox Code Playgroud)
sql 看起来像SELECT * FROM Table1 WHERE col NOT REGEXP '^0*[1-9][0-9]*(\.[0-9]+)?|0+\.[0-9]*[1-9][0-9]*$'
| 归档时间: |
|
| 查看次数: |
8405 次 |
| 最近记录: |