#navi(../)
* 一つのINSERTで複数行をINSERTするSQL構文 [#bce27f68]
INSERT文で1レコードのみのINSERTではなく、INSERT1つで複数のレコードをINSERTする構文を以下に記します。
#contents
#htmlinsertpcsp(db-top.html,db-sp.html)
* 動作確認環境 [#r9842afd]
-OS
$ lsb_release -d
Description: Ubuntu 12.04.4 LTS
-データベース
# select version();
version
------------------------------------------------------------------------------------------------------
PostgreSQL 9.1.12 on i686-pc-linux-gnu, compiled by gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 32-bit
mysql> select version();
+-------------------------+
| version() |
+-------------------------+
| 5.5.35-0ubuntu0.12.04.2 |
+-------------------------+
* INSERT構文 [#f08957f8]
INSERT1つで複数のレコードをINSERTするSQL構文は以下の通りです。
INSERT INTO テーブル名 VALUES
(1レコード目),
(2レコード目),
:
(nレコード目);
* 試してみる [#c1be499d]
以下のSQLに記すテーブルを作成し、INSERTしてみます。
CREATE TABLE t1 (a int, b int, c int);
INSERT文
INSERT INTO t1 VALUES
(1,1,1),
(2,2,2),
(3,3,3),
(4,4,4),
(5,5,5),
(6,6,6),
(7,7,7),
(8,8,8);
上記SQL実行後、SELECT文でt1テーブルを確認してみます。
insdb=# select * from t1;
a | b | c
---+---+---
1 | 1 | 1
2 | 2 | 2
3 | 3 | 3
4 | 4 | 4
5 | 5 | 5
6 | 6 | 6
7 | 7 | 7
8 | 8 | 8
(8 rows)
以上、INSERT1つで複数レコードをINSERTする構文でした。
#htmlinsertpcsp(db-btm.html,db-sp.html)