我正在使用mysql查询来获取多个turnk id的数据。但是我得到了不同的IN()格式的不同结果。 我的ID格式:
1) IN ('1,2,3')
2) IN ('1','2','3')
3) IN (1,2,3)
通过应用这些格式我从mysql获得结果,但每次显示不同的结果。这不是随机的。假设: 用不。 (1)我得到55和 用不。 (2)我得到87和 用不。 (3)我得到55
i am not much familiar with this situation. so need your help.
由于
答案 0 :(得分:2)
你要求3件不同的东西
1) IN ('1,2,3')
您正在查询字符串'1,2,3',它与ID = '1,2,3'
相同。
2) IN ('1','2','3')
您正在查询3个字符串'1','2'和'3'中的任意一个,它与ID = '1' or ID = '2' or ID = '3'
3) IN (1,2,3)
您正在查询3个数字 1,2和3中的任何一个,它与ID = 1 or ID = 2 or ID = 3
通常2)和3)会给出与字符串之间的隐式转换相同的结果,数字会产生相同的值。