zoukankan      html  css  js  c++  java
  • Mysql--7种Join查询

    0.sql的执行顺序
    手写顺序

    机读顺序

    总结

    ①From:对from左边的表和右边的表计算笛卡尔积,产生虚拟表c1
    ②On:对c1中的数据进行on过滤,只有符合过滤条件的数据记录才会记录在虚拟表c2中
    ③Join:若指定了连接条件(left、right),主表中的未匹配的行就会作为外部行添加到c2中,生成虚拟表c3
    ④Where:对虚拟表c3中的数据进行条件过滤,符合过滤条件的记录插入到虚拟表c4中
    ⑤Group by:根据group by子句中的列,对c4中的记录进行分组操作,生成c5
    ⑥Having:对虚拟表c5中的记录进行having过滤,符合筛选条件的记录插入虚拟表c6中
    ⑦Select:执行select操作,选择指定的列,插入到虚拟表c7中
    ⑧Distinct:对c7中的数据去重,生成虚拟表c8
    ⑨Order by:对虚拟表c8中的数据按照指定的排序规则进行排序,生成虚拟表c9
    ⑩Limit:取出指定的记录,产生虚拟表c10,将结果返回
    1.join图

    2.数据准备

    ①C、Z两表共有(交集部分)
    Select * from tbl_emp inner join tal

    ②C、Z共有+C的独有

    ③ C、Z共有+Z的独有

    ④C的独有

    ⑤Z的独有

    ⑥C的独有+Z的独有

    ⑦AB全有

  • 相关阅读:
    【HDOJ】2267 How Many People Can Survive
    【HDOJ】2268 How To Use The Car
    【HDOJ】2266 How Many Equations Can You Find
    【POJ】2278 DNA Sequence
    【ZOJ】3430 Detect the Virus
    【HDOJ】2896 病毒侵袭
    求奇数的乘积
    平方和与立方和
    求数列的和
    水仙花数
  • 原文地址:https://www.cnblogs.com/rootcz/p/9536653.html
Copyright © 2011-2022 走看看