在Select .. In语句中排序MySQL

How*_*ard 3 mysql sql

在MySQL中,我喜欢SQL

select id from user where id IN (2, 3, 1);
Run Code Online (Sandbox Code Playgroud)

但是MySQL将行返回为1,2,3,是否有可能强制MySQL返回与原始订单2,3,1相同的顺序?

谢谢.

Eug*_*ash 6

你可以使用这个FIELD功能:

select id from user where id IN (2, 3, 1) ORDER BY FIELD(id, 2, 3, 1);
Run Code Online (Sandbox Code Playgroud)