2

以下のようなクエリがあり、「in」関数内で指定された ID と同じ順序でレコードが返されるようにします。

SELECT * FROM table 1 where id in(12,6,4,3,13)

SQL だけを使用してこれを行うことはできますか、それとも独自の並べ替え関数を作成する必要がありますか。

4

2 に答える 2

2

CASEレコードのカスタムソートに使用できます

ORDER BY CASE WHEN ID = 12 THEN 1
              WHEN ID = 6 THEN 2
              WHEN ID = 4 THEN 3
              WHEN ID = 3 THEN 4
              WHEN ID = 13 THEN 5
              ELSE 6
         END, ID
于 2013-05-05T16:29:36.130 に答える