SELECT * FROM table WHERE id IN (5,4,1,3)
以上SQL查询结果的排序为:1,3,4,5 而并非 IN 的索引顺序。
按IN的顺序排序时,需要如下写法:
SELECT * FROM table WHERE id IN (5,4,1,3) ORDER BY FIELE(id,5,4,1,3)
本文探讨了SQL查询中使用IN子句时的排序问题。默认情况下,即使在IN子句中指定了特定顺序,查询结果仍会按照数据库内部排序进行返回。为了实现指定顺序的排序,需要使用ORDER BY FIELE()函数。
SELECT * FROM table WHERE id IN (5,4,1,3)
以上SQL查询结果的排序为:1,3,4,5 而并非 IN 的索引顺序。
按IN的顺序排序时,需要如下写法:
SELECT * FROM table WHERE id IN (5,4,1,3) ORDER BY FIELE(id,5,4,1,3)
2179

被折叠的 条评论
为什么被折叠?