SQL INSERT文のサンプル

SQLのINSERT文のサンプルです。

目次

説明用のテーブル

以下のテーブルにINSERTするとします。

fishテーブル
名前 データ型
id int(11)
name varchar(20)
romaji varchar(20)

INSERT文 (列名なし)

INSERT  INTO  テーブル名  VALUES ( ‘値1′ [ , ‘値2’ ]・・・);
  • valuesの後に値を記述します。
    テーブルの列の数と同じ数の値を記述します。
  • 値をセットしない項目はNULLと書きます。(以下の2行目参照)

SQL文

INSERT INTO fish VALUES (1,'まぐろ','maguro');
INSERT INTO fish VALUES (2,'さば',null);

結果

上記INSERT文の実行結果です。

fishテーブル
id name romaji
1 まぐろ maguro
2 さば null

 

INSERT文 (列名を指定)

INSERT  INTO  テーブル名 ( 項目名1 [ , 項目名2 ]・・・)  VALUES ( ‘値1′ [ , ‘値2’ ]・・・);
  • テーブル名の後に列名を記述します。
    →テーブルの全ての列名を記述する必要はありません。(以下の3行目参照)
  • valuesの後に値を指定します。

SQL文

INSERT INTO fish(id,name,romaji) VALUES (1,'まぐろ','maguro');
INSERT INTO fish(id,name,romaji) VALUES (2,'さば',null);
INSERT INTO fish(id,name) VALUES (3,'たい');

結果

上記INSERT文の実行結果です。

fishテーブル
id name romaji
1 まぐろ maguro
2 さば null
3 たい null

 

INSERT文 (select文の結果をinsertする)

INSERT INTO テーブル名
SELECT 項目名 FROM テーブル名
  • select文の結果をテーブルに挿入します。

説明のため以下のfish2テーブルにいったんデータをINSERTします。

fish2テーブル
名前 データ型
id int(11)
nama varchar(20)
romaji varchar(20)
INSERT INTO fish2(id,name,romaji) VALUES (1,'まぐろ','maguro');
INSERT INTO fish2(id,name,romaji) VALUES (2,'さば',null);
INSERT INTO fish2(id,name) VALUES (3,'たい');

SQL文

以下のSQLで、fish2テーブルからfishテーブルにINSERTすることができます。

INSERT INTO fish
SELECT * FROM fish2

結果

上記INSERT文の実行結果です。

fishテーブル
id name romaji
1 まぐろ maguro
2 さば null
3 たい null

 

リンク

以下は、MySQLのinsert構文のリンクです。
https://dev.mysql.com/doc/refman/5.6/ja/insert.html

関連の記事

SQL 外部結合とは(left outer joinとright outer join)
SQL 副問合せとは
SQL 自己結合とは
SQL 内部結合とは (inner join)
SQL UNIONとは
SQL UPDATE文とDELETE文のサンプル




△上に戻る