回顾
sum、max 和 min 聚合函数
avg 和 count 函数
分组查询 group by 子句
多字段分组和 having 子句
知识点又分为4个
交叉连接(笛卡尔积)
连接查询概要
内连接案例
自然连接
查询信息的来源如果来自多张表,则必须对这些表进行连接查询。 连接是把不同表的记录连到一起的最普遍的方法,通过连接查询可将多个表作为一个表进行处理。 连接查询分为内连接和外连接。
1 交叉连接(笛卡尔积)
交叉连接(Cross Join),又称“笛卡尔连接(Cartesian Join)”或“叉乘(Product)”,它是所有类型的内连接的基础。 如果把表视为行记录的集合,那么交叉连接即返回这两个集合的笛卡尔积,返回到结果集合中的数据行数等于第一张表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。
2 内连接查询概要
内连接基于连接谓词,它将两张表 ( 如A 和 B) 的列组合在一起,产生新的结果表。 内连接查询会将 A 表的每一行和 B 表的每一行进行比较,并找出满足连接谓词的组合。当连接谓词被满足,A 和 B 中匹配的行会按列组合(并排组合)成结果集中的一行。 内连接分 3 种:交叉连接、相等连接和自然连接。
4 自然连接
自然连接 (Natural Join) 是一种特殊的内连接,它要求相连接的两张表的连接依据列必须是相同的字段(字段名相同,字段属性相同)。 在自然连接中两张表的所有名称相同的列都将被比较,并且在结果集中把重复的列去掉, 结果集中两张表中名称相同的列仅出现一次。而普通的内连接并不去掉重复的列。 部分数据库不支持自然连接, 如 SQL Server 等。