宏顶高科云服务

having的用法

3
作者:宏小顶来源:内部发布
database.jpg

就是先通过sql语句把所有数据查询出来,再用 group by 进行分组,然后把分完组的数据用聚合函数进行统计,只不过查询语句和聚合函数之间需要用having连接;(group by having、聚合函数通常一起使用)

结构:查询语句+group by+ having +聚合函数统计


直接上栗子:

SELECT agent , COUNT(agent) t   #在业绩表里统计推荐次数(取别名t

FROM   tbl_trade

where   creat_date between '2020-01-01' and '2020-12-31'

GROUP BY agent               #通过业务员分组

HAVING t > 15               #查询业绩大于15

order by t desc                                      #按照业绩倒序排序


运行结果:

oS-UC5gWJbL   100

oS-UC5mqG     51

oS-UC5il3dY     23

oS-UC5uQT       19

oS-UC5s3V       18

常用聚合函数是sum()avg()count()

(聚合函数是用来统计每个分组的统计信息,它们要跟 group by 一起使用,用来将每个分组所有数据聚合成一条统计数据。聚合函数: max() min() count() avg() sum() 等。


语句执行的顺序

select 语句执行顺序大致是:

where(数据查询) -> group by(数据编组) ->having(结果过滤) -> order by(排序)