• insert into select 与select into from -- sql 批量插入


     
    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   
  • 相关阅读:
    (转)sysbench部署与参数详解
    (转)MySQL自带的性能压力测试工具mysqlslap详解
    (转)mysql双机热备的实现
    (转)linux运维必会MySQL企业面试题
    (转)MySQL出现同步延迟有哪些原因?如何解决?
    (转)mysql数据库高可用高扩展性架构方案实施
    java.IO
    String类的编码和解码问题
    编码表的概述和常见编码表
    05_打字游戏
  • 原文地址:https://www.cnblogs.com/wei-lai/p/5092077.html
Copyright © 2020-2023  润新知