Closed3

postgresqlで指定順に並べたいとき(mysqlでいうorder by field相当)

miyatakamiyataka

やったこと

-- 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

-- 上記のクエリはあまりにも単純なクエリだが、もっと実用的なクエリ(動かしたかったやつ)だと便利
このスクラップは2ヶ月前にクローズされました