【SQL】INSERT文を自動作成する方法:サンプルあり


ここでは、SQLのINSERT文を大量に作成する方法を紹介します。

INSERT文のサンプルは↓で多数紹介していますので参考にしてください。
>>【SQL】INSERT文の書き方:サンプル多数あり

EXCELを使って自動作成する方法

EXCEL表に記入されているデータを使って、INSERT文を作る方法です。

例えば、A、B、C列に設定されているデータを使ってINSERT文を作る場合、次のようなEXCEL式を使ってINSERT文を作ることが出来ます。

VALUESに、セルの値をセットするように、値と文字列を連結していきます。

="INSERT INTO TABLE1 VALUES(" &A1 &","&B1&"," & C1&");"

セルの値を、リテラルや固定値として扱いたい場合には、’(シングルクォーテーション)を使って、値を囲みます。

先ほどよりも少し複雑になりますが、これでセルの値を文字リテラルとして登録できます。

="INSERT INTO TABLE1 VALUES('" &A2 &"','"&B2&"','" & C2&"');"

INSERT文を作成する式を1つ作ったら、あとは式をコピーすることで簡単に作成することが出来ます。

Osqleditを使ってINSERT文を自動作成する方法

ORACLEデータベースでSQLを使うためのツールであるOsqleditではINSERT文を作成する機能があります。

例えば、ある表をSELECTした結果を表示されます。

その後、結果の行を選択して、右クリックすると”INSERT文”という項目があります。クリックすると、選択した行のデータを登録するためのINSERT文を作成してくれます。

これを使うと大量データをいとも簡単にコピーするためのINSERT文を作成することが出来ます。

SELECTしてINSERT文を自動作成する方法

SELECT文を使って、大量にINSERT文を作ることも出来ます。

SELECTした値を使って、INSERT文を構築することで、SELECTと同時にINSERT文を大量に作成することが出来ます。

SELECT
    'INSERT INTO TABLE1 VALUES('|| a.col1 || ',' || a.col2 || ',' || a.col3 || ');'
FROM
    TABLE2 a 

まとめ

最後までお読み頂きありがとうございます。

他にも当サイトでは、INSERT文の様々な書き方を解説しております。詳しくは「【SQL】INSERT文の書き方:サンプル多数あり」で解説しているのでぜひ参考にしてください。