MySQL的INSERT INTO SELECT語句用于將一張表中的數據插入到另一張表中。
下面是INSERT INTO SELECT語句的基本語法:
INSERT INTO 目標表 (列1, 列2, 列3, ...)
SELECT 列1, 列2, 列3, ...
FROM 源表
示例: 假設我們有兩張表:表1(employees)和表2(new_employees)。我們想將表1中的部分員工數據插入到表2中。
employees表結構:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
| 1 | John Doe | 5000 |
| 2 | Jane Doe | 6000 |
| 3 | Bob Smith| 5500 |
+----+----------+--------+
new_employees表結構:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
我們可以使用以下INSERT INTO SELECT語句將employees表中的數據插入到new_employees表中:
INSERT INTO new_employees (id, name, salary)
SELECT id, name, salary
FROM employees
WHERE salary > 5500
以上語句將employees表中salary大于5500的記錄插入到new_employees表中,只插入id、name和salary列的數據。
new_employees表將會變為:
+----+----------+--------+
| id | name | salary |
+----+----------+--------+
| 2 | Jane Doe | 6000 |
+----+----------+--------+
注意,INSERT INTO SELECT語句可以根據需要選擇要插入的列和行。