为了账号安全,请及时绑定邮箱和手机立即绑定

检测MySQL中的值是否为数字

检测MySQL中的值是否为数字

一只甜甜圈 2019-08-31 15:38:32
有没有办法检测值是否是MySQL查询中的数字?如SELECT * FROM myTable WHERE isANumber(col1) = true
查看完整描述

3 回答

?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

如果您的数据是'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'


查看完整回答
反对 回复 2019-08-31
  • 3 回答
  • 0 关注
  • 852 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信