Group By 和having的用法

原文地址:Group By 和having的用法 – 编程屋

目录

1 前言

2  Group By、having

3 总结

1 前言

        对于一些小白同学来说,mysql中的一些聚合函数、分组或者having的一些用法总是感觉理解起来稍微吃力,今天对其做一个整理,并举一些平时开发中常见的例子来说明。

2  Group By、having

字面意思,我们也能知道group by是分组的意思。但是通常group by经常和聚合函数配合使用。

所以我们通常能够用group by干什么呢?比如:分组之后可以计数(Count)、求和(SUM)、求平均数(AVG)。

数据准备如下:

 1)此时,想知道每门学科的最高分

SELECT course ,Max(score) AS 最高分数 FROM `t_user` t GROUP BY course

结果:

可以发现,我们用了group by对于分组后每个分组都会返回该组的一个结果,按照学科分组,每个学科都会返回一个值最大值或是最小值亦或者是平均值

 2)想知道考试时间在2022-09-07号之前每门学科的最高分

SELECT course ,MAX(score) AS 最高分数 FROM `t_user` t WHERE t.create_time > '2022-09-07' GROUP BY course

结果:

 可以发现,我们用了where,这个时候,数学的最高分已经不是105分了,而是72分。说明where条件是在group by分组之前执行的.

3)想知道考试时间在2022-09-07号之前每门学科最高分数在70以上有多少人

以上只是部分内容,为了便于维护,本文已迁移到新地址:Group By 和having的用法 – 编程屋

  • 22
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值