レコードデータ型を使用してクエリの結果を反復処理しようとしています。それでも、クエリで定義されたテーブルエイリアスを使用して1つの列にアクセスしようとすると、次のエラーが発生します。
ERRO:スキーマ "inv_row"が存在しませんCONTEXT:SQLコマンド "SELECT inv_row.s.processor <> inv_row.d.processor" PL /pgSQL関数"teste"行7(IF)
このエラーをスローするコードは次のとおりです。
CREATE OR REPLACE FUNCTION teste() returns void as $$
DECLARE
inv_row record;
BEGIN
FOR inv_row in SELECT * FROM sa_inventory s LEFT JOIN dim_inventory d ON s.macaddr = d.macaddr LOOP
IF inv_row.s.processor <> inv_row.d.processor THEN
<do something>;
END IF;
END LOOP;
END;
$$ language plpgsql;
レコードデータ型内の特定のテーブルの列にアクセスする別の方法はありますか?