MySQLに複数行のデータを挿入する必要がある場合があります。 MySQLでは、1つのクエリで複数行の情報を入力できます。この記事では、MySQLに複数の行を挿入する方法を見ていきます。
MySQLに複数の行を挿入する方法
MySQLに複数の行を挿入する手順は次のとおりです。 MySQLに複数の行を挿入する方法は複数あります。これらのアプローチを1つずつ見ていきます。
INSERTを使用して複数の行を挿入します
次のテーブルがあるとしますemployees(id、first_name、last_name) 。
mysql> create table employees(id int, first_name varchar(255), last_name varchar(255));
INSERTステートメントを使用して複数の行を挿入する構文は次のとおりです。
INSERT INTO table_name(column1, column2, ...), values(row1_value1, row1_value2,...), (row2_value1, row2_value2,...), ...
上記のクエリでは、値を挿入する必要があるテーブル名を指定する必要があります。次に、丸括弧「()」で囲まれた各行の値をカンマで区切って入力する必要があります。
従業員に複数行の情報を挿入するSQLクエリは次のとおりです。 テーブル。
mysql> insert into employees(id, first_name, last_name)
values(1,'John','Doe'),
(2,'Jane','Doe');
mysql> select * from employees;
+------+------------+-----------+
| id | first_name | last_name |
+------+------------+-----------+
| 1 | John | Doe |
| 2 | Jane | Doe |
+------+------------+-----------+
SELECTから複数の行を挿入
SELECTクエリの結果を使用して、テーブルに複数行のデータを挿入することもできます。
INSERTINTOステートメントを使用して1つのテーブルから別のテーブルにデータをコピーするSQLクエリ構文は次のとおりです。
INSERT INTO table1 (column1, column2, ...) select column1, column2, ... from table2
上記のクエリでは、table2からcolumn1、column2、…を選択し、それらをtable1に挿入します。
INSERT INTOステートメントとSELECTステートメントで使用される列は、同じ名前と順序である必要があることに注意してください。そうしないと、エラーが発生します。
従業員からデータをコピーするためのSQLクエリは次のとおりです。 employee2へのテーブル テーブル。
mysql> insert into employees2(id, first_name, last_name) select id, first_name, last_name from employees; mysql> select * from employees2; +------+------------+-----------+ | id | first_name | last_name | +------+------------+-----------+ | 1 | John | Doe | | 2 | Jane | Doe | +------+------------+-----------+
重複せずに複数の行を挿入
テーブルに複数の値を挿入するときにレコードの重複を自動的に回避する場合は、SQLクエリのINSERTの後にIGNOREキーワードを使用します。
ただし、これは主キーを持つテーブルに対してのみ機能します。
これが例です、
mysql> create table employees(id int primary key, first_name varchar(255), last_name varchar(255)); mysql> insert ignore into employees(id, first_name, last_name) values(1,'John','Doe'), (1,'John','Doe'); mysql> select * from employees; +----+------------+-----------+ | id | first_name | last_name | +----+------------+-----------+ | 1 | John | Doe | +----+------------+-----------+
ご覧のとおり、2つの重複する行ではなく、1つの行のみが挿入されました。
Ubiqを使用すると、データを簡単に視覚化し、リアルタイムのダッシュボードで監視できます。 Ubiqを無料でお試しください。