02 MySQL 查询












聚合是统计的结果






分组的目的就是为了更好的进行统计
非分组字段不能出现在结果集中
没有分组下面这个你要怎么实现?

where 和 having 面向的数据集是不一样的
where 是对 from 后面的数据进行筛选
having 是对分组后的结果集进行筛选



排序
order by 是写在 where 的后面



分页

having 对聚合的结果进行行筛选
存储关系
关系也是数据


故意弄个错的
外键约束导致插入语句失败

如果我把 学生表 里 id = 1 的学生记录删除,成绩表 里那些 stuid = 1 的记录会不会受到影响呢?

多个表之间需要连接起来查询

注意和上图哪里不同

连接查询一共有三种,区别是结果集不一样


以左表的信息为准

innerjoin 两个表都能匹配的结果出现在结果集中
left join 两个都能匹配上的出现 + 左表独有的出现没有的用null填充


分组的目的是为了统计和聚合


浙公网安备 33010602011771号