我有2列的表格,
id | name
------------
1 | abc
2 | efg
3 | kkk
4 | lop
5 | xyz
查询:
select id from name where name IN ('kkk','lop','xyz','kkk','efg');
给定结果:
2 | efg
3 | kkk
4 | lop
5 | xyz
预期结果:
id | name
-------------
3 | kkk
4 | lop
5 | xyz
3 | kkk
2 | efg
有任何想法吗?
最佳答案
您可以通过以下方式进行排序:
但是您无法使用单个查询进行复制。
select id from name where name IN ('kkk','lop','xyz','kkk','efg') ORDER BY
FIELD(name,'kkk','lop','xyz','kkk','efg');
除非您必须编写联合查询才能获得预期的结果。
关于mysql - 在MySQL中以给定的顺序获取结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40627582/