我想在 where 子句中选择多个值,但它没有选择任何东西。
这是我的选择查询:
'SELECT * FROM table WHERE id IN (4, 5) ORDER BY id desc'
我错过了什么?
我想在 where 子句中选择多个值,但它没有选择任何东西。
这是我的选择查询:
'SELECT * FROM table WHERE id IN (4, 5) ORDER BY id desc'
我错过了什么?
根据您的评论,查询失败的原因是该列是 avarchar
并且您在子句中使用了int
值。IN
如果您引用数字,MySQL 不会转换类型,那么您的查询将使用varchar
我想你的表没有 id = 4 或 id = 5 的数据。
尝试
SELECT * FROM table WHERE id = 4
那也返回任何东西吗?我敢打赌没有。
为什么不只是'SELECT * FROM table WHERE (id = '4' OR id= '5') ORDER BY id desc'