SQL语法:SELECT INTO 与INSERT INTO SELECT

SELECT INTO

SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中。

语法:

SELECT * INTO newtable FROM TableA;

SELECT country INTO newtable FROM TableA;

复制多个表中的数据插入到新表中:

SELECT TableA.name, TableB.count, TableB.date
INTO newtable
FROM TableA
LEFT JOIN TableB
ON TableA.id=TableB.site_id;

SELECT INTO 语句可用于通过另一种模式创建一个新的空表。只需要添加使查询没有数据返回的 WHERE 子句即可:

SELECT * INTO newtable FROM TableA WHERE 1=0;

INSERT INTO SELECT

INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中

INSERT INTO TableB SELECT * FROM TableA;

INSERT INTO TableB (column_name(s)) SELECT column_name(s) FROM TableA;

实例:

INSERT INTO TableA(name, country)
SELECT app_name, country FROM TableB
WHERE id=1;

MySQL 数据库不支持 SELECT ... INTO 语句,但支持INSERT INTO ... SELECT

也可以使用以下语句来拷贝表结构及数据:

功能:将表TableA的内容拷贝到新表newtable中

CREATE TABLE newtable AS SELECT * FROM TableA;

猜你喜欢

转载自blog.csdn.net/Doutd_y/article/details/82315680
今日推荐