ITPub博客

首页 > > > SQL基础知识普及(十七)——SELECT INTO和INSERT INTO SELECT 语句

SQL基础知识普及(十七)——SELECT INTO和INSERT INTO SELECT 语句

作者:liyue071714118 时间:2018-03-17 21:05:17 0 删除 编辑

点击上面蓝色字SQL学习之路,关注我们哦~

1.SELECT INTO

SQL SELECT INTO 语句


使用 SQL,您可以将信息从一个表中复制到另一个表中。

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


SQL SELECT INTO 语句

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

SQL SELECT INTO 语法

我们可以把所有的列都复制到新表中:

SELECT *
INTO newtable [IN externaldb]
FROM table1;

或者只复制希望的列插入到新表中:

SELECT column_name(s)
INTO newtable [IN externaldb]
FROM table1;


提示:将使用SELECT语句中定义的列名和类型创建新表。您可以使用AS子句来应用一个新名称。


SQL SELECT INTO 实例

创建 Customers 的备份复件:

SELECT *
INTO CustomersBackup2013
FROM Customers;

请使用 IN 子句来复制表到另一个数据库中:

SELECT *
INTO CustomersBackup2013 IN 'Backup.mdb'
FROM Customers;

只复制一些列插入到新表中:

SELECT CustomerName, ContactName
INTO CustomersBackup2013
FROM Customers;

只复制德国的客户插入到新表中:

SELECT *
INTO CustomersBackup2013
FROM Customers
WHERE Country='Germany';

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

SELECT Customers.CustomerName, Orders.OrderID
INTO CustomersOrderBackup2013
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID;

提示:SELECT INTO 语句可以用于在另一种模式下创建一个新的空表。只需添加WHERE子句,使查询返回时没有数据:

SELECT *
INTO newtable
FROM table1
WHERE 1=0;

2.INSERT INTO SELECT


SQL INSERT INTO SELECT 语句


使用SQL,您可以将信息从一个表中复制到另一个表中。

INSERT INTO SELECT 从表中复制数据,并将数据插入现有的表中。


SQL INSERT INTO SELECT 语句

INSERT INTO SELECT 语句从表中复制数据,并将数据插入现有的表中。目标表中的任何现有行都不会受到影响。

SQL INSERT INTO SELECT 语法

我们可以将所有列从一个表中复制到另一个已经存在的表中:

INSERT INTO table2
SELECT * FROM table1;

或者我们可以把想要的列复制到另一个现有的表中:

INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;

演示数据库

以下是"Customers"表中的数据:

选自 "Suppliers" 表的数据:


SQL INSERT INTO SELECT 实例

把 "Suppliers" 一栏复制到 "Customers" 一栏:

实例

INSERT INTO Customers (姓名, 省份)
SELECT 供应商名称, 省份 FROM Suppliers;

只将上海供应商的副本插入 "Customers" :

实例

INSERT INTO Customers (姓名, 省份)
SELECT 供应商名称, 省份 FROM Suppliers
WHERE 省份='上海市'; 


长按下面的二维码关注我们,更多学习经验/教辅资料应有尽有,觉得文章写的不错还望能分享给您的朋友,感谢您的支持~


原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2021-12-10

  • 博文量
    1486
  • 访问量
    11405