MySQL的IN查询保持顺序
--发布于 2023-03-08 20:25:52
我们知道,MySQL的IN查询的语句如下
-- 查询Id在集合3, 5, 2中的用户
SELECT * FROM user WHERE user_id IN(3,5,2);
这样虽然可以查到用户Id为那个集合中的值的用户。但有时候,我们也想查出来的用户记录也是按照指定的顺序来排序,也就是说,查询结果的排序也是按user_id为3, 5, 2这样的顺序排序,这样就要用到ORDER BY FIELD()
语句
-- 查询Id在集合3, 5, 2中的用户,并且结果按user_id为3, 5, 2这样的顺序排序
SELECT * FROM user WHERE user_id IN(3, 5, 2) ORDER BY FIELD(user_id, 3, 5, 2);
参考
--更新于 2023-03-09 10:51:41