• sql多表连接查询


    1.交叉连接

             返回两个表的笛卡尔积:select * from A,B

             比如A的id有{1,2,3},B的aid有{2,3,4},得到的数据:
             id .....aid.....
             1         2
             1         3
             1         4
             2         2
             ....      ....
             3         3
             3         4

    2.内连接--inner join(inner可以省略)

      返回两个表的交集:

        2.1隐式内连接(看不到join的内连接)

             就是加了条件的交叉连接:select * from A,B where A.id = B.aid

             比如A的id有{1,2,3},B的aid有{2,3,4},得到的数据:
             id........A表数据(不含id)........aid........B表数据(不含aid)
             2               不为空                  2              不为空  
             3               不为空                  3              不为空

        2.2显式内连接

             (1).select *from A inner join B on A.id = B.aid-----------得到的数据和隐式内连接一样
             (2).select *from A inner join B using (id)----------当B表中的外键名等于A表的主键名时使用,查询结果只有一个id字段的值

             比如A的id有{1,2,3},B的id有{2,3,4},得到的数据:
             id........A表数据(不含id)........B表数据(不含aid)
             2               不为空                      不为空  
             3               不为空                      不为空

    3.外连接

             返回两个表的并集

        3.1左外连接left outer join(outer 省略)

             select *from A left outer join B on A.id = B.aid     
             返回A和B的并集,比如A的id有{1,2,3},B的oid有{2,3,4},返回的是{1,2,3},id为1的记录中B表信息为空
             id........A表数据(不含id)........aid........B表数据(不含aid)
             1               不为空                  空                空
             2               不为空                   2              不为空  
             3               不为空                   3              不为空

        3.2右外连接right outer join(outer 省略)

             select *from A right outer join B on A.id = B.aid   
             返回A和B的并集,比如A的id有{1,2,3},B的oid有{2,3,4},返回的是{2,3,4},id为4的记录中A表信息为空
             id........A表数据(不含id)........aid........B表数据(不含aid)
             2               不为空                   2              不为空  
             3               不为空                   3              不为空
            空                 空                        4              不为空

  • 相关阅读:
    linux多线程下载工具mwget
    mysql性能优化学习笔记-参数介绍及优化建议
    mongodb 基础知识
    cas 单点登录出现org.jasig.cas.client.util.CommonUtils.getResponseFromServer
    mysql性能优化学习笔记-存储引擎
    mysql性能优化学习笔记
    (Code) Python implementation of phrase extraction from sentence
    论文笔记:Siamese Cascaded Region Proposal Networks for Real-Time Visual Tracking
    论文笔记:ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware
    论文笔记:DARTS: Differentiable Architecture Search
  • 原文地址:https://www.cnblogs.com/zy-Luo/p/11041718.html
Copyright © 2020-2023  润新知