SQL 插入選擇
透過 SQL,您可以從一個表複製資訊到另一個表。
INSERT INTO SELECT 語句從一個表複製數據,然後把資料插入到一個已存在的表中。
SQL INSERT INTO SELECT 語句
INSERT INTO SELECT 語句從一個表複製數據,然後把資料插入到一個已存在的表中。目標表中任何已存在的行都不會受影響。
SQL INSERT INTO SELECT 語法
我們可以從一個表格複製所有的資料列插入到另一個已存在的表格中:
INSERT INTO table2
SELECT * FROM table1;
SELECT * FROM table1;
#或我們可以只複製希望的資料列插入到另一個已存在的表中:
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
# FROM table1;
(column_name(s))
SELECT column_name(s)
# FROM table1;
示範資料庫
在本教學中,我們將使用php 樣本資料庫。
下面是選自"Websites" 表的資料:
+----+--------------+--- ------------------------+-------+---------+
| id | name | url | alexa | country |
+----+----------+------------------------------------ --------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA | 1 |
| 2 | 淘寶 | https://www.taobao.com/ | 13 | CN cn/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 201 https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+----------- ------------------+-------+---------+
##SQL INSERT INTO SELECT 實例
只複QQ 的APP 到"Websites" 中:實例
| id | name | url | alexa | country |
+----+----------+------------------------------------ --------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA | 1 |
| 2 | 淘寶 | https://www.taobao.com/ | 13 | CN cn/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 201 https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+----------- ------------------+-------+---------+
#
下面是"apps" APP 的資料:
mysql> SELECT * FROM apps;
+----+------------+ -------------------------+---------+
| id | app_name | url #+----+------------+-------------------------+---- -----+
| 1 | QQ APP | http://im.qq.com/ | CN 地 CN |
| 3 | 淘寶 APP | https://www.taobao.com/ | CN |
+----+------------+------- ------------------+---------+
3 rows in set (0.00 sec)
+----+------------+ -------------------------+---------+
| id | app_name | url #+----+------------+-------------------------+---- -----+
| 1 | QQ APP | http://im.qq.com/ | CN 地 CN |
| 3 | 淘寶 APP | https://www.taobao.com/ | CN |
+----+------------+------- ------------------+---------+
3 rows in set (0.00 sec)
複製"apps" 中的資料插入"Websites" 中:
實例INSERT INTO Websites (name, country )
SELECT app_name, country FROM apps;INSERT INTO Websites (name, country)
SELECT app_name, country FROM pWHERE id=1;