您的位置:首页 > 数据库 > MySQL

In MySQL, a zero number equals any string

2016-01-09 00:00 555 查看
最近在做项目的过程中发现了一个问题

数据库表 test 有个字段是 target_id int(11),这个字段可能为零

使用如下查询

select * from test where target_id = '';
select * from test where target_id = 'abcd';

这样,所有target_id = 0 的结果都会出来,为什么?

查阅资料,这是类型转化导致的,在mysql中 0 意味着 任何字符串

其实不是mysql特有了,在php中有个intval 方法将字符串转化为数字

intval("abcd");//0
intval("99a");//99
intval("a99");//0
intval("99");//99

我相信大家应该都明白了吧,哈哈

原文地址:
In MySQL, a zero number equals any string

标签:
mysql
zero
string
vs

智能推荐

php Only variables can be passed by reference

apparmor 引起自定义mysql 日志问题

MYSQL 命令行显示乱码 解决方案

Ubuntu apparmor何方神圣

Yii2 捕获错误日志
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: