SQL SELECT INTO 语句
通过 SQL,您可以从一个表复制信息到另一个表。
SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中。
注意:
MySQL 数据库不支持 SELECT … INTO 语句,但支持 INSERT INTO … SELECT 。
当然你可以使用以下语句来拷贝表结构及数据:
CREATE TABLE 新表
AS
SELECT * FROM 旧表
SQL SELECT INTO 语法
我们可以复制所有的列插入到新表中:
SELECT *
INTOnewtable[INexternaldb]
FROMtable1;
或者只复制希望的列插入到新表中:
SELECTcolumn_name(s)
INTOnewtable[INexternaldb]
FROMtable1;
提示:新表将会使用 SELECT 语句中定义的列名称和类型进行创建。您可以使用 AS 子句来应用新名称。
表 websites

表 websites
表access_log

表access_log
SQL SELECT INTO
实例
创建 Websites 的备份复件:
SELECT *
INTO WebsitesBackup2016
FROM Websites;

1
只复制一些列插入到新表中:
SELECT name, url
INTO WebsitesBackup2016
FROM Websites;

2
只复制中国的网站插入到新表中:
SELECT *
INTO WebsitesBackup2016
FROM Websites
WHERE country='CN';

3
复制多个表中的数据插入到新表中:
SELECT Websites.name, access_log.count, access_log.date
INTO WebsitesBackup2016
FROM Websites
LEFT JOIN access_log
ON Websites.id=access_log.site_id;

4
提示:SELECT INTO 语句可用于通过另一种模式创建一个新的空表。只需要添加促使查询没有数据返回的 WHERE 子句即可:
SELECT *
INTOnewtable
FROMtable1
WHERE 1=0;
Ps:MySQL 数据库不支持 SELECT … INTO 语句,但支持 INSERT INTO … SELECT 。

感谢阅读,创作不易,留个关注再走呗
原创文章,作者:ERDZRA,如若转载,请注明出处:https://www.beidanyezhu.com/a/98592.html
微信扫一扫