创建一个表,如下图,
执行查询语句
SELECT * FROM t1 WHERE a ="2";
MySQL会将字符“2”,转换成数字2,结果如下
执行语句
SELECT * FROM t1 WHERE a ="a";
结果如下
可见是查不到的,但是如果将某一条数据的a改成0,就可以查询出来一条结果,如图
再次执行
由此可见,MySQL查询时候会将字符型数字转换成数字,将非数字类型字符转换成0,平时开发时候要注意一下这个小知识。
创建一个表,如下图,
执行查询语句
SELECT * FROM t1 WHERE a ="2";
MySQL会将字符“2”,转换成数字2,结果如下
执行语句
SELECT * FROM t1 WHERE a ="a";
结果如下
可见是查不到的,但是如果将某一条数据的a改成0,就可以查询出来一条结果,如图
再次执行
由此可见,MySQL查询时候会将字符型数字转换成数字,将非数字类型字符转换成0,平时开发时候要注意一下这个小知识。