数据库第四天
查询中的HAVING:HAVING也是一个过滤条件的关键字,和where的作用一致,但是用法完全不一样。
HAVING只能用在group by后面,并且只能过滤和聚合函数一起使用。
DISTINCT关键字:去掉重复的数据
完整的select语句:
select distinct from 表名 where 条件 group by 字段名 having 聚合函数条件 order by 字段 排序方式 limit 查询的数量;
1、会执行from,将数据表中的所有数据放到内存中,
2、如果有条件,则会执行where 语句,过滤掉没有用的数据,留下所需要的数据。
3、如果有分组,则进行特定字段的分组,如果在写语句中没有group by,会分组,每一条sql语句都会分组,如果语句中没有group by,则自动分为一个组。一定会默认分一个组,是因为会使用到聚合函数。
4、如果有having存在,则先计算having后面的聚合函数,将计算出来的值再进行条件过滤。
5、如果存在order by ,则进行特定的方式排序,排序规则有两种,ASC,DESC 如果order by 字段 后面没有排序方式,则默认为ASC ,如果一个语句中没有order by ,会根据存入数据的一个顺序进行排序。
6、distinct会根据是否去重进行过滤数据,如果没有,默认为不去重
7、最后使用limit根据需求取出想要的数据。
链接查询:多张表一起查询。
链接查询:交叉链接、内联接、外连接(左外连接,右外连接),迫切内连接