sql >> Database >  >> RDS >> Mysql

Meerdere rijen invoegen in MySQL

Soms moet u mogelijk meerdere rijen gegevens in MySQL invoegen. Met MySQL kunt u meerdere rijen informatie invoeren met een enkele zoekopdracht. In dit artikel zullen we bekijken hoe u meerdere rijen in MySQL kunt invoegen.


Meerdere rijen invoegen in MySQL

Hier zijn de stappen om meerdere rijen in MySQL in te voegen. Er zijn meerdere manieren om meerdere rijen in MySQL in te voegen. We zullen elk van deze benaderingen één voor één bekijken.


Voeg meerdere rijen in met INSERT

Stel dat u de volgende tabel werknemers(id, first_name, last_name) heeft .

mysql> create table employees(id int,
       first_name varchar(255),
       last_name varchar(255));

Hier is de syntaxis om meerdere rijen in te voegen met de INSERT-instructie.

INSERT INTO table_name(column1, column2, ...),
    values(row1_value1, row1_value2,...),
          (row2_value1, row2_value2,...),
          ...

In de bovenstaande query moet u uw tabelnaam vermelden waarin u waarden moet invoegen. Vervolgens moet u de waarden van elke rij tussen ronde haakjes '()' op een door komma's gescheiden manier invoeren.

Hier is de SQL-query om meerdere rijen informatie in te voegen in werknemers tafel.

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 |
+------+------------+-----------+


Meerdere rijen uit SELECT invoegen

U kunt ook meerdere rijen gegevens in uw tabel invoegen met behulp van het resultaat van een SELECT-query.

Hier is de SQL-querysyntaxis om gegevens van de ene tabel naar de andere te kopiëren met behulp van de instructie INSERT INTO.

INSERT INTO table1 (column1, column2, ...)
select column1, column2, ...
from table2

In de bovenstaande query selecteren we kolom1, kolom2, … uit tabel2 en voegen ze in tabel1 in.

Houd er rekening mee dat de kolommen die in de INSERT INTO-instructie en SELECT-instructie worden gebruikt, dezelfde naam en volgorde moeten hebben. Anders krijg je een foutmelding.

Hier is de SQL-query om gegevens van werknemers te kopiëren tabel aan employees2 tafel.

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       |
+------+------------+-----------+


Meerdere rijen invoegen zonder duplicaat

Als u automatisch dubbele records wilt vermijden wanneer u meerdere waarden in uw tabel invoegt, gebruikt u het trefwoord IGNORE na INSERT in uw SQL-query.

Dit werkt echter alleen voor tabellen die een primaire sleutel hebben.

Hier is een voorbeeld,

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       |
+----+------------+-----------+

Zoals je kunt zien, is er maar 1 rij ingevoegd in plaats van twee dubbele rijen.

Ubiq maakt het eenvoudig om data te visualiseren en te monitoren in realtime dashboards. Probeer Ubiq gratis.

  1. Hoe Glassfish Server handmatig in Eclipse te configureren

  2. Geavanceerde SQL:variaties en verschillende gebruiksscenario's van T-SQL Insert Statement

  3. Records verwijderen uit een externe postgresql-database met behulp van een lokaal geleverde lijst

  4. Waarom slaat de sql-server vraagtekentekens op in plaats van Japanse tekens in NVarchar-velden?