Accessではサブクエリを使用して複数行を一括でINSERTすることができます。
例えば、以下のようなテーブルがあるとします。
ID Name Age
1 John 25
2 Mary 30
このテーブルに、以下のように複数行を一括でINSERTすることを考えます。
ID Name Age
3 Peter 28
4 Jane 35
この場合、以下のようなSQL文を使用することで一括でINSERTすることができます。
INSERT INTO テーブル1 (ID, Name, Age)
SELECT 3, 'Peter', 28 FROM DUAL
UNION ALL
SELECT 4, 'Jane', 35 FROM DUAL
このSQL文では、サブクエリを使用して、複数の行を一括でINSERTしています。UNION ALLを使用することで、複数のSELECT文を結合して、一度に複数の行をINSERTすることができます。
注意点として、AccessではDUALという仮想テーブルは用意されていないため、FROM句で適当なテーブルを指定しています。また、INSERTするテーブルのフィールドと、サブクエリで取得する値の数と順序が一致していることを確認する必要があります。
コメント