1
3つのアイテムの複数のセットを挿入する必要があります。すべてのセットで2つのアイテムが同じです。 私は$ 1の位置でこの句を入れたい:(TIME ZONE 'UTC' AT NOW FROM EPOCH())EXTRACTpostgresql、すべてのセットに2つの同じアイテムを持つ3つのアイテムのいくつかのセットを挿入します。
WITH data(serial_id, banned_ts, reason) AS (
VALUES (x, $1, $2),(y, $1, $2),(z, $1, $2)
)
INSERT INTO _serial_ids_banned (serial_id, banned_ts, reason)
SELECT d.serial_id, d.banned_ts, d.reason
FROM data d
WHERE NOT EXISTS
(SELECT 1 FROM _serial_ids_banned b
WHERE b.serial_id = d.serial_id);
私はそれを行う場合は、節が3回を評価した(またはそれ以上に依存しますセットの数)。句を一度だけ評価し、すべてのセットで使用するようなクエリを作成することは可能ですか?
'データと(serial_id、banned_ts、理由)は、例えば'(UNNEST(配列[X、Y、Z])、$ 1、$ 2を選択)など。 – Abelisto
Abelisto、ありがとう!素晴らしいトリック!非常に明確な。 –