Mysql--7种Join查询
程序员文章站
2022-04-12 13:05: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全有
推荐阅读
-
PHP查询数据库中满足条件的记录条数(两种实现方法)
-
zf框架的db类select查询器join链表使用示例(zend框架)
-
awk实现Left、join查询、去除重复值以及局部变量讲解例子
-
cad怎么查询面积? cad计算面积的四种方法
-
ThinkPHP采用原生query实现关联查询left join实例
-
MyBatis之自查询使用递归实现 N级联动效果(两种实现方式)
-
SQL联合查询inner join、outer join和cross join的区别详解
-
Spark SQL join的三种实现方式
-
MySQL中(JOIN/ORDER BY)语句的查询过程及优化方法
-
二种sql分页查询语句分享