MySQL where-in语句应该return按照where-in的顺序记录
MySQL where-in statement should return records by order of where-in
假设我有以下 SQL 语句:
SELECT * FROM someTable where id in (4,5,2,3,1);
这将 return someTable
中 id
等于 4、5、2、3 或 1 的所有记录。它们的顺序 returned 是:
id data
============
1 data
2 data
3 data
4 data
5 data
============
returned 值怎么能像 where-in 子句的顺序一样?所以 returned 顺序应该是:
============
4 data
5 data
2 data
3 data
1 data
============
您可以使用order by field
order by field(id,4,5,2,3,1) ;
假设我有以下 SQL 语句:
SELECT * FROM someTable where id in (4,5,2,3,1);
这将 return someTable
中 id
等于 4、5、2、3 或 1 的所有记录。它们的顺序 returned 是:
id data
============
1 data
2 data
3 data
4 data
5 data
============
returned 值怎么能像 where-in 子句的顺序一样?所以 returned 顺序应该是:
============
4 data
5 data
2 data
3 data
1 data
============
您可以使用order by field
order by field(id,4,5,2,3,1) ;