1
同じ名前の列を持つ2つのテーブルの結合を含むレコードをループするコードブロックがあります。レコードをループするときに等しく名前付き列にアクセスする
今、私はこれらの均等という名前の列の2の値が必要ですが、私は、「テーブルのFROM句エントリが不足して 『T1』を乗り越えることはできません。
DO $$
DECLARE
r record;
BEGIN
FOR r IN SELECT t1.*, t2.* FROM Table1 t1 JOIN Table2 t2 ON t1.somecolumn = t2.somecolumn
LOOP
INSERT INTO Table3 (column1, column2)
VALUES (r.t1.someotherColumn, r.t2.someotherColumn);
--^ error occurs here
END LOOP;
END$$;
あなたは明示的SELECT内のすべての列を一覧表示し、それらにエイリアスを与える必要があります。 –
あなたは、R( 'としてあなたループヘッド&参照列にT1、t2'を選択'必要.t1).sotherotherColumn'をループ本体に入れてください。それ以外の場合は、エイリアスを使用して曖昧さを解決します。 – pozs