Mysql--7种Join查询
程序员文章站
2022-10-03 22:42:25
0.sql的执行顺序 手写顺序 机读顺序 总结 ①From:对from左边的表和右边的表计算笛卡尔积,产生虚拟表c1 ②On:对c1中的数据进行on过滤,只有符合过滤条件的数据记录才会记录在虚拟表c2中 ③Join:若指定了连接条件(left、right),主表中的未匹配的行就会作为外部行添加到c2 ......
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全有
上一篇: CSV文件导入导mysql数据库
下一篇: 昨天早上刚上班