select * from user where user_id = 1;
select * from user where user_id = '1';
我在数据库里
定义的是int型,为啥都能查到数据?
select * from user where user_id = 1;
select * from user where user_id = '1';
我在数据库里
定义的是int型,为啥都能查到数据?
5 回答3.2k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
1 回答2.9k 阅读✓ 已解决
5 回答1.4k 阅读
mysql的比较运算过程中,遇到字符串和数值的比较时,会自动进行转换。具体可以参照comparison-operators章节
不同类型的值进行比较运算,中间需要经历转换过程,不但效率低下,还会影响索引的使用。且可能存在一些意想不到的情况,诸如