(對不起,我英文不好)如何ORDER BY列,但陣列來先
我有用戶ID數組如下:
[5, 9, 3, 22, 16]
顯然,值是動態的。
現在,我需要SELECT
所有用戶,但具有上述id的用戶排在第一位。
到目前爲止我試過的是什麼?
該查詢給我確切的答案:
SELECT * FROM users WHERE id IN (5, 9, 3, 22, 16)
UNION ALL
SELECT * FROM users WHERE id NOT IN (5, 9, 3, 22, 16);
但有沒有更好的辦法?
PS:
我使用的PostgreSQL 10.
我認爲OP首先需要數組中的ID。所以應該是'ID IN(...)' –
nvm我看到你得到0或1,那些'NOT'得到最後:) –