前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)

SQL学习之Insert的特殊用法(插入检索出的数据,表之间的数据复制)

作者头像
郑小超.
发布2018-01-24 15:27:49
1.1K0
发布2018-01-24 15:27:49
举报
文章被收录于专栏:GreenLeaves

1、插入检索出的数据

代码语言:javascript
复制
select * from dbo.Customers_1

现在有个需求,需要将这张Customers_1表的数据合并到Customers_2表中,下面是解决代码:

代码语言:javascript
复制
insert into dbo.Customers_2(Company,Name,Province)
select Company,Name,Province
from dbo.Customers_1

ok,完成需求!

注意,这边可以通过Where和Group By等过滤数据在在进行插入,只要指定好需要插入的列和检索的列对应,且对应插入表的非插入列允许为空就可以!

代码语言:javascript
复制
insert into dbo.Customers_2(Company)
select Company
from dbo.Customers_1 group by Company

2、表之间的数据复制

代码语言:javascript
复制
select *  into test from Customers_2
代码语言:javascript
复制
select * from test

分析下第一行代码的执行流程,这条SELECT语句创建了一个名为test 的新表,并把Customers_2表的整个内容复制到新表中,因为这里使用的是Select *,所以将整个Customers_2表的内容都复制到了test表中,如果需要赋值部分列,可以明确给出列名,而不是使用*通配符。

在使用SELECT INTO复制表时,需要知道一些事情:

(1)任何SELECT选项和子句都可以使用,包括WHERE和GROUP BY;

(2)可利用联结从多个表中插入数据;

(3)不管从多少个表中检索数据,数据只能插入一个表;

注意:SELECT INTO 是试验新SQL语句前进行表赋值的很好的工具。在复制的数据上测试SQL代码,而不会影响实际的数据。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-08-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档