1. 程式人生 > >mysql查詢時,查詢結果按where in陣列排序

mysql查詢時,查詢結果按where in陣列排序

使用情況:當我們在進行where id in () 查詢的時候,如果where in的id查詢陣列為[2,7,1,4,3],正常情況查詢出來的結果順序為[1,2,3,4,7],這可能不是我們想要的結果,我們期望查出來的結果順序與where in的順序一致,這裡介紹兩個方式:

1.使用find_in_set函式:

select * from table where id in (2,7,1,4,3) order by find_in_set(id,'2,7,1,4,3');

2.使用order by field

select * from table where id in (2,7,1,4,3) order by field(id,2,7,1,4,3);