沃梦达 / IT编程 / 数据库 / 正文

SQL Server之SELECT INTO 和 INSERT INTO SELECT案例详解

SELECT INTO语句是一个SQL Server语法,它可以将一个表中的数据复制到一个新的表中。新表的结构和数据都从原表中派生。

SQL Server之SELECT INTO 和 INSERT INTO SELECT

什么是SELECT INTO?

SELECT INTO语句是一个SQL Server语法,它可以将一个表中的数据复制到一个新的表中。新表的结构和数据都从原表中派生。

语法:

SELECT column1, column2, column3... INTO new_table_name
FROM source_table_name;

示例1(复制所有行和列到一个新表):

SELECT * INTO customers_backup FROM customers;

这个例子将customers表中的所有数据复制到一个名为customers_backup的新表中。

示例2(仅选择需要复制的行和列):

SELECT customer_id, customer_name, city INTO customers_backup FROM customers WHERE city='New York';

这个例子将customers表中城市为“New York”的客户的id、姓名和城市这三列数据复制到一个名为customers_backup的新表中。

什么是INSERT INTO SELECT?

INSERT INTO SELECT语句用于从一个表中选择数据并将其插入到另一个表中。

语法:

INSERT INTO new_table_name (column1, column2, column3,...)
SELECT column1, column2, column3,...
FROM source_table_name;

示例1(将选定行和列插入到新表):

INSERT INTO customers_backup (customer_id, customer_name, city)
SELECT customer_id, customer_name, city FROM customers WHERE city='New York';

这个例子将customers表中城市为“New York”的客户的id、姓名和城市这三列数据复制到一个名为customers_backup的新表中。

示例2(将所有行和列插入到新表):

INSERT INTO customers_backup SELECT * FROM customers;

这个例子将customers表中的所有数据复制到一个名为customers_backup的新表中。

总结

SELECT INTO和INSERT INTO SELECT都是用于在SQL Server中复制数据的常见语法。它们可以帮助我们从一个表中选择数据并将其复制到另一个表中。要使用这些语句,我们需要了解它们的语法和示例,并确保正确地指定源表、目标表和所需列。

本文标题为:SQL Server之SELECT INTO 和 INSERT INTO SELECT案例详解