zoukankan      html  css  js  c++  java
  • 数据库左连接,右连接,内连接,外连接

      记笔记,记笔记

          我记得有人问过我这个问题,当时回答得不太好,我补上这个问题

        首先连接有:内连接,外连接(左外,右外),全连接(交集),交叉连接(笛卡尔积)

        先略两个表

        

        首先左连接:SELECT * FROM test1 a LEFT JOIN test2 b ON a.id = b.id;

        (尴尬,join打错了,毕竟英语没有6级(#^_^!))

        解释下就是以左边表id(案例里面是test1)为基础和右表id对比,左表有的右表也有就也出来,右表没有的就NULL咯,右连接和左连接相反

        右连接:SELECT * FORM test1 a RIGHT JOIN test2 b ON a.id = b.id;

        

        enh,以右边表id为基础和左边表id对比,右边表有的左边表也有就显示出来,左边表没有的就NULL

        内连接:SELECT * FROM test1 a INNER JOIN test2 b ON a.id = b.id;

        

        解释的话就是:两个表的交集,就是左表和右表都有的才显示出来

        全连接:(SELECT * FROM test1) UNION (SELECT * FROM test2);

         

         UNION是两个交集,相当于两张表数据和在一起(不重复),下面是会重复的UNION ALL:(SELECT * FROM test1) UNION ALL (SELECT * FROM test2);

           

        交叉连接:SELECT * FROM test1 CROSS JOIN test2;

         

              OVER

        

  • 相关阅读:
    网络编程(四)
    网络编程(三)
    网络编程(二)
    网络编程(一)
    异常处理
    Python 的名称空间和作用域
    如何在Java 8中愉快地处理日期和时间
    线段树入门整理、
    最小生成树prim、
    <climits>头文件
  • 原文地址:https://www.cnblogs.com/yigedapangzhi/p/10290311.html
Copyright © 2011-2022 走看看