mysql查询如何保持in的顺序?

解决mysql的in语法查询顺序问题

mysql数据库总,使用in语句查询,查询结果默认会根据主键id排序。

示例:

SELECT * FROM article WHERE id IN(1000,321,567,123);

运行结果如下:


如果想按照in()里的条件排序,可以使用FIELD()语句解决:

SELECT * FROM article WHERE id IN(1000,321,567,123)
ORDER BY FIELD(id,1000,321,567,123);

运行结果:


可以看到查询结果顺序已经按照in的顺序排序了。

推荐阅读