sql where传入类型不同,造成查询结果差异问题

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

原有数据样式如下:

sql where传入类型不同,造成查询结果差异问题

正常结果:

sql where传入类型不同,造成查询结果差异问题

问题展现:

sql where传入类型不同,造成查询结果差异问题

此问题主要原因如下:

以下皆可在官网中找到:

 sql where传入类型不同,造成查询结果差异问题

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

sql where传入类型不同,造成查询结果差异问题

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

sql where传入类型不同,造成查询结果差异问题

此为临界值问题:

sql where传入类型不同,造成查询结果差异问题

结合小生的猜想:

sql where传入类型不同,造成查询结果差异问题    11,12,13,15  字符串转换成整数11,所有where cols=11成立。

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

上一篇:Python时间,日期,时间戳之间转换,时间转换时间戳,Python时间戳转换时间,Python时间转换时间戳


下一篇:android 设置布局横屏竖屏