Closed3
postgresqlで指定順に並べたいとき(mysqlでいうorder by field相当)
正直このscrapを見なくとも、以下の記事を見れば事足りる。とはいえ、すぐに再利用可能な形でクエリをどこかに残しておきたかった。
やったこと
-- arrayを受け取り、その一行だけ返すテーブルとして表現する
WITH input_array AS (
SELECT ARRAY[
-- ここにinputを並べる
]
)
-- input_arrayに対して、unnestして採番を行う
, indexed_array AS (
SELECT
unnest(IDS) AS XXX_ID
, generate_subscripts(IDS, 1) AS num
FROM input_array
)
-- 実際に動かしたかったクエリで `indexed_array` を利用しつつ 採番したカラムでorder byする
SELECT *
FROM indexed_array
ORDER BY num
-- 上記のクエリはあまりにも単純なクエリだが、もっと実用的なクエリ(動かしたかったやつ)だと便利
役だった人はLIKEしてってください!
このスクラップは2ヶ月前にクローズされました