SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

1.INSERT INTO SELECT语句

语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。示例如下:


   --1.创建测试表
    create TABLE Table1
    (
        a varchar(10),
        b varchar(10),
        c varchar(10),
        CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
        (
            a ASC
        )
    ) ON [PRIMARY]

create TABLE Table2
    (
        a varchar(10),
        c varchar(10),
        d int,
        CONSTRAINT [PK_Table2] PRIMARY KEY CLUSTERED
        (
            a ASC
        )
    ) ON [PRIMARY]
    GO
    --2.创建测试数据
    Insert into Table1 values('赵','asds','90')
    Insert into Table1 values('钱','asds','100')
    Insert into Table1 values('孙','asds','80')
    Insert into Table1 values('李','asds',null)
    GO
    select * from Table2

--3.INSERT INTO SELECT语句复制表数据
    Insert into Table2(a, c, d) select a,c,5 from Table1
    GO

--4.显示更新后的结果
    select * from Table2
    GO
    --5.删除测试表
    drop TABLE Table1
    drop TABLE Table2

2.SELECT INTO FROM语句

语句形式为:SELECT vale1, value2 into Table2 from Table1

要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。示例如下:


   --1.创建测试表
    create TABLE Table1
    (
        a varchar(10),
        b varchar(10),
        c varchar(10),
        CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
        (
            a ASC
        )
    ) ON [PRIMARY]
    GO

--2.创建测试数据
    Insert into Table1 values('赵','asds','90')
    Insert into Table1 values('钱','asds','100')
    Insert into Table1 values('孙','asds','80')
    Insert into Table1 values('李','asds',null)
    GO

--3.SELECT INTO FROM语句创建表Table2并复制数据
    select a,c INTO Table2 from Table1
    GO

--4.显示更新后的结果
    select * from Table2
    GO
    --5.删除测试表
    drop TABLE Table1
    drop TABLE Table2

转载于:https://blog.51cto.com/uyuyuuy/1597608

SELECT INTO 和 replace into SELECT 两种表复制语句相关推荐

  1. SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句 Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) valu ...

  2. oracle数据库【表复制】insert into select from跟create table as select * from 两种表复制语句区别...

    create table  as select * from和insert into select from两种表复制语句区别 create table targer_table as select ...

  3. PostgreSQL SELECT INTO和INSERT INTO SELECT 两种表复制语句

    SELECT INTO和INSERT INTO SELECT两种表复制语句都可以用来复制表与表之间的数据,但是它们之间也有区别. 建表语句: bas_custom_rel表 CREATE TABLE ...

  4. oracle中replace into,oracle SELECT INTO 和 replace into SELECT 两种表复制语句详解

    我们经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO和INSERT INTO ...

  5. SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解(SQL数据库和Oracle数据库的区别)...

    我们经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INT ...

  6. SELECT INTO 和 INSERT INTO SELECT 两种表复制语句 (以后在写SQL时,要有这种思想!!!)

    今天天在工作中看到了一个业务要求,具体要求是这样的,根据一堆条件从一个表中查询出符合条件的ID,然后把这个ID插入到一张表中. 技术是使用iBaits和数据库连接,当时我的第一反应是两次查询,先得到I ...

  7. oracle select into 多个,Oracle SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解

    在Oracle中select into from不可以使用,用create tableselect代替该功能!!!在Sql Server中可以正常使用.1.INSERT INTOSELECT语句 语句 ...

  8. insert into 的两种表复制插入方法

    insert into 语句除了基本的 insert into 表名(a,b,c)values(a1,b1,c1)外 . 还有更进一步的,从一个表复制其中全部字段数据或者是部分字段数据插入到另一个表中 ...

  9. python中循环语句只有for和while两种_Python循环语句之while,for语句详解

    下面为大家分享一篇Python 循环语句之 while,for语句详解,具有很好的参考价值,希望对大家有所帮助.一起过来看看吧 Python中有两种循环,分别为:for循环和while循环. for循 ...

最新文章

  1. mysql 程序迁移_如何从MySQL数据库程序中迁移数据库文件
  2. go包package的使用细节
  3. Json-lib 需要的 jar 包
  4. 从东岳流体下载自带OpenFOAM的Vmware虚拟机(Ubuntu20.04+OpenFOAM),无法共享文件夹【终极解决方案】
  5. docker 指定网卡_Docker | Docker技术基础梳理(五) Docker网络管理
  6. 英伟达正寻求欧盟批准其收购Arm
  7. scala 类中的对象是类_Scala类和对象– Singleton对象,伴侣类
  8. 具有Eclipse和嵌入式JBoss HornetQ Server的简单JMS 1.1生产者和使用者示例
  9. Log42j 源代码分析:日志回滚
  10. java 环境配置(详细教程)
  11. Http分段下载实现
  12. LC-恢复二叉搜索树(JavaScript实现)
  13. 通过jdbc连接hive出现错误
  14. 免费的艺术二维码生成器
  15. RobotStudio软件及ABB机器人相关问题
  16. IP、网关、端口、网段、子网掩码概念区别
  17. python -i 豆瓣源
  18. 页框,页表,页表项,页面大小,页表项 长度的理解
  19. 奥比中光深度相机使用笔记一
  20. EA常见画图(类图、包图、构件图、状态图、顺序图、活动图)

热门文章

  1. 你不知道的console
  2. centos系统查看资源使用情况的工具
  3. [转]MySQL 5.6 my.cnf配置优化
  4. shell脚本判断进程是否运行
  5. Java EE WEB工程师培训-JDBC+Servlet+JSP整合开发之13.Form表单处理(1)
  6. oracle 三表关联更新_Oracle数据库入门
  7. 启动子级时出错_【本音知识】弹钢琴时如何背谱?
  8. 互联网协议 — SCTP 流控制传输协议
  9. Git 本地仓库管理
  10. Linux的ELF格式分析