首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL的分组查询与过滤分组

前提条件:查询表PERSON中所有的记录。

SELECT * FROM PERSON ;

一、查询结果的分组操作:(Group By)

分组允许把数据表中的数据按照某个(多个)字段分为多个组,字段值相同的为一组。

SELECT height,COUNT(*) FROM PERSON group by height;

注1:Group By 只是创建分组,不保证分组里面的数据的排列顺序是怎样的。

注2:如果分组列中具有null值,则null值将作为一个分组返回。如果列中有多行null值,它们将分为一组。

注3:Group By子句必须出现在where子句之后,order by子句之前。

注4:分组是为了便于对每个组进行聚集计算。

注5 : 除了聚集函数之外,SELECT 语句后的每个列都必须在 GROUP BY 子句中给出。

二、过滤分组:(Having)

MySQL使用子句对分组指定条件,规定包含哪些分组,排除哪些分组。

where子句过滤指定的行,having子句过滤指定的分组。

SELECT height, COUNT( * )  FROMPERSON

GROUP BYheight having count(*)>1;

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210227A0AJQD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券