- SELECT文とサブクエリを使用する方法:
INSERT INTO table1 (column1, column2, column3)
SELECT t2.column1, t2.column2, t2.column3
FROM table1 t1
JOIN table2 t2 ON t1.join_column = t2.join_column;
上記のコードでは、table1
にカラムを挿入するために、table2
とJOINしています。JOINの条件は、table1
とtable2
のjoin_column
が一致することです。t2.column1
、t2.column2
、t2.column3
は、table2
のカラムです。
- INSERT文とサブクエリを使用する方法:
INSERT INTO table1 (column1, column2, column3)
VALUES (
(SELECT column1 FROM table2 WHERE table2.join_column = table1.join_column),
(SELECT column2 FROM table2 WHERE table2.join_column = table1.join_column),
(SELECT column3 FROM table2 WHERE table2.join_column = table1.join_column)
);
上記のコードでは、table1
にカラムを挿入するために、table2
からサブクエリを使用してカラムの値を取得しています。table2.join_column
とtable1.join_column
が一致するレコードのカラム値が、table1
に挿入されます。
- UPDATE文とサブクエリを使用する方法:
UPDATE table1
SET column1 = t2.column1,
column2 = t2.column2,
column3 = t2.column3
FROM table2 t2
WHERE table1.join_column = t2.join_column;
上記のコードでは、table1
の既存のレコードのカラム値を、table2
のカラム値で更新しています。JOINの条件は、table1.join_column
とtable2.join_column
が一致することです。
これらの方法を使用することで、PostgreSQLで他のテーブルに参加し、参加先のテーブルからカラムを挿入することができます。適切なJOIN条件を指定し、必要なカラムを選択してください。