在mysql中选择set order

hd.*_*hd. 2 mysql sql

我有这样的查询:

SELECT title,id FROM table1 WHERE id IN ('2','7','4','10')
Run Code Online (Sandbox Code Playgroud)

默认情况下,结果集按id排序,但我需要按照上面集合中数字的确切顺序排列.

我怎样才能做到这一点?

jen*_*ram 5

FIELD()函数应该能够这样做:

SELECT
    title, id
FROM
    table1
WHERE
    id IN ('2', '7', '4', '10')
ORDER BY FIELD(id, '2', '7', '4', '10')
Run Code Online (Sandbox Code Playgroud)

另请参阅IN()中的参数之后的MySQL排序.