你的位置:首页 > 数据库

[数据库]sql where传入类型不同,造成查询结果差异问题


 话说故事是这样的。请听小生慢慢道来:

 原有数据样式如下:

 

正常结果:

问题展现:

此问题主要原因如下:

 以下皆可在官网中找到:

 

为数据类型从高到低依次:(ps:小生用翻译工具翻译,就不在此献丑了)

                   

根据上图类型,再结合如下图,大类型会向小类型转换

此为临界值问题:

结合小生的猜想:

      11,12,13,15  字符串转换成整数11,所有where cols=11成立。

 

mysql:http://dev.mysql.com/doc/refman/5.7/en/type-conversion.html