Sử dụng hàm FIELD:-
SELECT *
FROM articles
WHERE article.category IN (1, 57, 67, 78)
ORDER BY FIELD(article.category, 1, 67, 78, 57)
CHỈNH SỬA - Nếu không tìm thấy nó sẽ trả về 0, vì vậy nếu bạn muốn 2 giá trị được sắp xếp trước thì có thể chỉ cần có 2 giá trị đó trong hàm nhưng đảo ngược và sắp xếp giảm dần.
SELECT *
FROM articles
WHERE article.category IN (1, 57, 67, 78)
ORDER BY FIELD(article.category, 67, 1) DESC
Điều này sẽ đặt danh mục 1 đầu tiên, danh mục 67 sau đó, tiếp theo là bất kỳ danh mục nào khác