第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

分組聚合

分组聚合

使用分组可以将数据分为多个逻辑组,然后对每个组进行聚合计算。

创建分组

分组是使用SELECT语句的GROUP BY子句建立的。

Students表:

| id  | class_id | name | gender | score |
| --- | -------- | ---- | ------ | ----- |
| 1   | 1        | 小明 | M      | 90    |
| 2   | 1        | 小红 | F      | 95    |
| 3   | 1        | 小军 | M      | 88    |
| 4   | 1        | 小米 | F      | 73    |
| 5   | 2        | 小白 | F      | 81    |
| 6   | 2        | 小兵 | M      | 55    |
| 7   | 2        | 小林 | M      | 85    |
| 8   | 3        | 小新 | F      | 91    |
| 9   | 3        | 小王 | M      | 89    |
| 10  | 3        | 小丽 | F      | 88    |
SELECT gender,COUNT(*) AS total FROM Students GROUP BY gender;

| gender | total |
| ------ | ----- |
|   M    |   5   |
|   F    |   5   |

上面的SELECT语句指定了两个列:gender和计算字段total。
GROUP BY子句指定了Students表按gender进行分组。
从输出结果中可以看到,系统根据gender将Students表自动分成两个组,然后对每个组执行聚合函数。

过滤分组

如果想排除某些分组,可以通过HAVING子句在数据分组后进行过滤。

SELECT
  class_id,
  FLOOR(AVG(score)) AS score
FROM
  students
GROUP BY
  class_id
HAVING
  FLOOR(AVG(score)) > 80;

| class_id | score |
| -------- | ----- |
|    1     |   91  |
|    3     |   89  |

从输出结果中可以看到,系统按照class_id对Students表进行分组,并计算每个class_id的平均分数,然后使用HAVING子句筛选出平均分数大于80的结果。

HAVING和WHERE

HAVING与WHERE非常类似,唯一的差别是,WHERE过滤行,而HAVING过滤分组。
如果不指定GROUP BY,则大多数数据库其实会同等对待它们,但是在使用HAVING时必须结合GROUP BY子句。
还有另一种理解方法,WHERE在数据分组前进行过滤,HAVING在数据分组后进行过滤。

分组和排序

在使用GROUP BY子句时,应该也给出ORDER BY子句,这是保证数据正确排序的唯一方法。

SELECT
  class_id,
  FLOOR(AVG(score)) AS score
FROM
  Students
GROUP BY
  class_id
ORDER BY
  score DESC;

| class_id | score |
| -------- | ----- |
|    3     |   89  |
|    1     |   86  |
|    2     |   73  |

SELECT子句顺序

|   子句    |       说明        | 是否必须使用 |
|----------|-----------------|--------------|
|  SELECT  | 要返回的列或表达式 |      是      |
|   FROM   | 从中检索数据的表   | 仅在从表选择数据时使用 |
|  WHERE   |     行级过滤      |      否      |
| GROUP BY |     分组说明      | 仅在按组计算聚合时使用 |
|  HAVING  |     组级过滤      |      否      |
| ORDER BY |   输出排序顺序    |      否      |
點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消