UNION:操作符用于合并两个或多个select语句的结果集。
                注意   union内部的select语句必须拥有相同的列数并且字段类型相同,且顺序相同。
INSERT:  批量插入结果集
               1. insert into table
                select x,y from A
                UNION select z,k from B ;
               2.  insert into table 
                select x,y,z from A where  1=1;
               3.批量导入表数据 ,不导入表约束
                select x,y,z into  B from  A  where  1=1;
SELECT INTO FROM 与INSERT INTO SELECT的区别?

1,INSERT INTO SELECT语句
语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1
要求目标表Table2必须存 如果不存在,系统则会提示对象无效。

2,SELECT INTO FROM语句
语句形式为:SELECT vale1, value2 into Table2 from Table1
要求目标表Table2不存在,因为在插入时会自动创建表Table2,好处:将Table1中指定字段数据复制到Table2中。

4.批量导入某表中的某列数据
INSERT INTO dbo.CusTemp (证件号码) SELECT 证件号码 FROM dbo.CusTemp2
LEFT JOIN   和 RIGHT JOIN
 
  LEFT JOIN 或 LEFT OUTER JOIN。 
左向外连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行。
如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。
如果左表的某行在右表中匹配出两行或多行,则在相关联的结果集中显示两行或多行
例子: 
a表 id name      b表 id      job  parent_id 
       1    张3                1      23      1 
       2    李四               2      34      2 
       3    王武               3      34      4

a.id同parent_id 存在关系

内连接

内连接。(典型的连接运算,使用像 = 或 <> 之类的比较运算符)。包括相等连接和自然连接。

 
内连接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。
内连接 结果会小于等于  a 或 b表  的数据。    
select a.*,b.* from a inner join b on a.id=b.parent_id

结果是 
1 张3                    1 23 1 
2 李四                   2 34 2 

左连接 如果b表有两个parent_id =1 的数据,查询的结果会是4行,

left join 会把on 后面所有满足条件的结果查询出来,结果 会大于等于a表的数据。
select a.*,b.* from a left join b on a.id=b.parent_id

结果是 
1 张3        1 23 1 
2 李四      2 34 2 
3 王武      null

右连接 
select a.*,b.* from a right join b on a.id=b.parent_id

结果是 
1 张3         1 23 1 
2 李四        2 34 2 
null            3 34 4   

insert into select 与select into from -- sql 批量插入的更多相关文章

  1. SQL批量插入表类 SqlBulkInsert

    ado.net已经有了sqlBulkCopy, 但是那个用xml格式,网络传输数据量太大. 自己实现了一个,传输尽量少的字节. 性能没对比过,有需要的自己拿去测试. using System.Data ...

  2. insert into 语句的三种写法 以及批量插入

    方式1. INSERT INTO t1(field1,field2) VALUE(v001,v002);            // 插入一条 方式2. INSERT INTO t1(field1,f ...

  3. sql 批量插入

    create  PROCEDURE insertinto as begindeclare @id int;set @id=1;while @id<10begininsert into perso ...

  4. 使用SQL批量插入数据到数据库 以及一些SQL函数的语法

    批量插入100条记录 set nocount on declare @i int=1; while @i<=100 begin Insert into Client(id,ClientCode, ...

  5. SQL 批量插入数据

    后面进行完善修改. /*批量插入数据*/ 这个比较完善.直接插入数据库表. INSERT INTO `goods_transverter` ( `code`,`es_id`,`barcode`, `n ...

  6. Delphi中SQL批量插入记录

    http://www.cnblogs.com/azhqiang/p/4050331.html 在进行数据库操作时, 我们经常会遇到批量向数据库中写入记录的情况. 在这里我提供3种操作方式:   1.  ...

  7. sql批量插入缓慢

    1.有一个普通的表t_asset,只有2个字段id,ip 没有索引 2.当用insert into t_asset(id,ip) values(?,?),(?,?) 1200多条记录时,发现竟然用了3 ...

  8. Sql批量插入时如果遇到相同的数据怎么处理

    测试数据 -- 创建测试表1 CREATE TABLE `testtable1` ( `Id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `UserId` I ...

  9. sql批量插入添加自动编号

    使用: ROW_NUMBER() over(order by ID desc) insert into dbo.Aa(Name,Nums) select top 10 NickName,ROW_NUM ...

随机推荐

  1. C#在excel中添加超链接

    1.新建一个项目 2.给项目添加引用:Microsoft Excel 12.0 Object Library (2007版本) using Excel = Microsoft.Office.Inter ...

  2. apache lucene solr 官网历史版本下载地址

    官网上一般只提供最新版本的下载,下面两个链接为所有历史版本的下载地址: lucene地址:archive.apache.org/dist/lucene/java/ solr地址:archive.apa ...

  3. Win10 创建应用程序包及部署

    https://msdn.microsoft.com/zh-cn/library/windows/apps/xaml/hh454036.aspx https://msdn.microsoft.com/ ...

  4. 咱就入个门之NHibernate映射文件配置(二)

    上一篇主要介绍了NHibernate映射文件的基础配置,这篇我们介绍下NHibernate的一对多及多对一配置(文中我直接使用双向关联,即一和多两端都配置,开发中可以只使用一端),同时略带介绍下NHi ...

  5. 关于Application Insights遥测功能使用【遇到问题】

    简介:Application Insights是微软发布的一个在线服务,可以监测自己的网站应用,进行性能管理以及使用分析. Application Insights功能一开始是出现在Visualstu ...

  6. 同一天的时间差,显示为HHMMSS和指定日期时间部分

    //1.hhmmss private String setGoodsDisBalance(Date startTime,Date endTime){ //时间差:毫秒ms long diff = en ...

  7. 【J2EE入门】13个规范

    看过了j2ee教学视频,真的让我痛彻心扉,那叫痛并快乐着,痛是因为看了这么长时间,自己只知道了13个规范的概念:同样,快乐也正是因为我知道了13个规范的概念,接下来就是逐项实践的学习. 看了教学视频, ...

  8. filter应用案例三:解决全站编码问题

    1 说明 乱码问题: 获取请求参数中的乱码问题: POST请求:request.setCharacterEncoding("utf-8"): GET请求:new String(re ...

  9. sqoop中,如果数据中本身有换行符,会导致数据错位

    sqoop中,如果数据中本身有换行符,会导致数据错位: 解决办法: 在sqoop import时修改配置文件 sudo -u hive sqoop import --connect jdbc:mysq ...

  10. spring 架构学习

    学习目的用于抽象业务逻辑,因spring本身就是抽象业务逻辑的框架,如做业务架构网面的工作 spring为不二之选. 一些好的网址 http://www.ibm.com/developerworks/ ...