SQL INSERT文のサンプル

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

目次

INSERT文 (列名を書かない)

INSERT  INTO  テーブル名  VALUES ( ‘値1′ [ , ‘値2’ ]・・・);
  • テーブルの列名を書かないINSERT文です。
  • valuesの後にINSERTする値を記述します。
    →値は、テーブルの列の数と同じ数を記述します。
    →値の位置がテーブルの列の位置に対応します。
  • 値をセットしない項目はNULLと書きます。

サンプル

サンプルのINSERT文です。
fishテーブルの後に列名がありません。
2行目は、3つめの値がnullになっています。

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

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

fishテーブル
id
int (11)
name
varchar(20)
romaji
varchar(20)
1 まぐろ maguro
2 さば null

 

INSERT文 (列名を書く)

INSERT  INTO  テーブル名 ( テーブルの列名1 [ , テーブルの列名2 ]・・・)  VALUES ( ‘値1′ [ , ‘値2’ ]・・・);
  • テーブル名の後にテーブルの列名を書くINSERT文です。
  • 全てのテーブルの列名を記述する必要はありません。
  • テーブルの列名の位置に対応してvaluesの値を指定します。

サンプル

サンプルのINSERT文です。
fishテーブルの後に列名があります。
3行目は、テーブルの列名と値が2つになっています。

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
int (11)
name
varchar(20)
romaji
varchar(20)
1 まぐろ maguro
2 さば null
3 たい null

 

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

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

サンプル

サンプルのINSERT文です。
fish2テーブルからfishテーブルにINSERTしています。
※fish2というテーブルがある前提です。

INSERT INTO fish
SELECT * FROM fish2

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

fish2テーブル
id
int (11)
name
varchar(20)
romaji
varchar(20)
1 まぐろ maguro
2 さば null
3 たい null
fishテーブル
id
int (11)
name
varchar(20)
romaji
varchar(20)
1 まぐろ maguro
2 さば null
3 たい null

リンク

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

関連の記事

SQL UPDATE文とDELETE文のサンプル
SQL 重複行を表示しないサンプル(distinct)
SQL 複数の行をまとめるサンプル(group byとhaving)
SQL 外部結合のサンプル(left outer join/right outer join)
SQL 副問合せのサンプル(サブクエリ)
SQL 自己結合とは
SQL 内部結合とは (inner join)
SQL UNIONとは

△上に戻る