我有这个问题:
SELECT Name FROM Table WHERE Id IN (414208,479516,4129769,414211,221171,3226290)
这将返回首次找到该列表中包含ID的所有名称。例如:如果具有id 221171的Jax是找到的第一个元素,那么它将是该结果表的第一个元素。
有没有办法按照它们在该列表中的显示方式对元素进行排序。 I.E.将在结果中列出的第一个名称应该具有414208的Id,第二个元素应该具有id 479516 ...最后一个元素应该具有Id 3226290。
答案 0 :(得分:2)
试试这个:
SELECT
Id
FROM
Table
WHERE
Id IN (414208,479516,4129769,414211,221171,3226290)
ORDER BY
FIELD(Id, 414208,479516,4129769,414211,221171,3226290)
答案 1 :(得分:1)
您可以使用mysql函数find_in_set
SELECT Name FROM Table WHERE Id IN (414208,479516,4129769,414211,221171,3226290) order by FIND_IN_SET(ID,'414208,479516,4129769,414211,221171,3226290')