Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Einfügen von Daten aus einer Tabelle in eine andere in MySQL

Angenommen, Sie müssen Daten von einer Tabelle in eine andere kopieren. Sie können in MySQL Daten aus einer Tabelle in eine andere einfügen.

Die Anweisung INSERT INTO SELECT kopiert Daten von einer Tabelle in eine andere. Vorhandene Zeilen in der Zieltabelle sind nicht betroffen.

Syntax
Daten für alle Spalten aus einer Tabelle in eine andere einfügen,

INSERT INTO table2
SELECT * FROM table1;

Einfügen von Daten aus einer Tabelle in eine andere für bestimmte Spalten,

INSERT INTO table2
column1, column2..
SELECT column1, column2, ..
FROM table1;

Beispiele
Betrachten Sie 2 Beispieltabellen, Benutzer und Kunden

Users
+------+--------------+-------------+
|  id  |   user_name  |   location  |
+------+--------------+-------------+
|   1  |      Jim     |   London    |
|   4  |      Rocky   |   US        |
|   7  |      Dan     |   Italy     |
|   3  |      Bill    |   France    |
+------+--------------+-------------+
Customers
+-------+------------------+--------+------------+
|   id  |   customer_name  |   age  |  location  |
+-------+------------------+--------+------------+
|   11  |       John       |    23  |     US     |
|   14  |      Roger       |    36  |    London  |
|   17  |       Will       |    29  |    Spain   |
|   13  |       Bob        |    34  |    Japan   |
+-------+------------------+--------+------------+

Einfügen von Daten aus einer Tabelle in eine andere für einige Spalten

mysql> INSERT INTO users (user_name, location)
SELECT customer_name, location FROM customers;
+------+--------------+-------------+
|  id  |   user_name  |   location  |
+------+--------------+-------------+
|   1  |      Jim     |   London    |
|   4  |      Rocky   |   US        |
|   7  |      Dan     |   Italy     |
|   3  |      Bill    |   France    |
|   11  |     John    |     US      |
|   14  |     Roger   |    London   |
|   17  |     Will    |     Spain   |
|   13  |     Bob     |     Japan   |
+-------+-------------+-------------+

Fügen Sie für einige Spalten Daten aus einer Tabelle in eine andere ein, nur die Kunden, die sich in den USA befinden.