INSERT ALL / INSERT FIRST の使い方
1 つの文で、いくつもの表に入れる(Oracle)
書き方
INSERT ALL INTO 表1 (列…) VALUES (…) INTO 表2 (列…) VALUES (…) SELECT … FROM …; INSERT ALL WHEN 条件 THEN INTO 表 … ELSE INTO 表 … SELECT …; INSERT FIRST WHEN 条件 THEN INTO … WHEN … THEN INTO … SELECT …;
最後の SELECT の 1 行ごとに、INTO の表へ入れます。WHEN を付けると条件に合う INTO だけ。ALL は合うものすべてに、FIRST は最初に合った 1 つだけに入れます。SELECT … FROM DUAL なら 1 行ずつ値を書けます。
例
INSERT ALL INTO a VALUES (1) INTO b VALUES (2) SELECT * FROM DUAL;
実際に打って練習する
Oracle コースの Lv20「一度に配る INSERT ALL」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜3 はログインすると無料で試せます(それより先はゴールド以上のプランで遊べます)。