一、类链接查询
1、笛卡尔积:笛卡尔连接又称交叉连接,笛卡尔积结果集中的数据行数等于第一张表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
2、类连接:select字段表from表1[ inner] Jbin 表2 on 表1.字段1 表2.字段2[where条件表达式],字段1和字段2为分别相连两表的主键和外键。
二、多表连接查询
多表连接查询方法:按照两两相连的方式建立的表连接查询简单多表连接查询方法,在from子句中,直接列出所有要连接的表,然后在where子句中指定连接条件。
三、外连接查询
1、概念:与连接查询不同的是,外连接所生成的结果集中不仅包含符合条件的数据条件记录,还包含左表和右表或左右表中所有的数据记录。
2、左外链接查询:左外连接的结果集合包括左表的所有记录和左表中满足条件的记录,结果集中那些不符合连接条件的来源于右表的列值为NULL。
3、右外链接查询:右连接是左外连接的方向连接,右外连接的结果集合包括右表的所有记录和右表中满足条件的记录,结果集中那些不符合连接条件的来源于左表的列值为NULL。
四、连接查询综合应用
group by 字段名别名
MYSQL支持group by 的分组列可以使用字段的别名,但很多其他的数据库都不支持,所以分组列最好不要使用别名。
综合使用连接查询,聚合函数和分组查询可以实现很多复杂的查询需求。