猿问

检测MySQL中的值是否为数字

有没有办法检测值是否是MySQL查询中的数字?如


SELECT * 

FROM myTable 

WHERE isANumber(col1) = true


一只甜甜圈
浏览 853回答 3
3回答

蝴蝶刀刀

如果您的数据是'test','test0','test1111','111test','111'要选择数据为简单int的所有记录:SELECT * FROM myTable WHERE col1 REGEXP '^[0-9]+$';结果:'111'(在正则表达式中,^表示开始,$表示结束)要选择存在整数或十进制数的所有记录:SELECT * FROM myTable WHERE col1 REGEXP '^[0-9]+\\.?[0-9]*$'; - for 123.12结果:'111'(与上一个示例相同)最后,要选择存在数字的所有记录,请使用以下命令:SELECT * FROM myTable WHERE col1 REGEXP '[0-9]+';结果:'test0'和'test1111'和'111test'和'111'
随时随地看视频慕课网APP

相关分类

MySQL
我要回答