SQL中的聚合函数(COUNT(),SUM(),AVG()等)主要是用于统计,若使用聚合函数作为约束条件,则不能放于WHERE字句中,一般的,聚合函数需要与"GROUP BY" 甚至"HAVING"关键字连用,而且聚合函数作为约束条件需放到HAVING字句中。例子:
【代码】--查询出现了100次以上的客户名称及其次数
SELECT f_client,COUNT(f_client) FROM t_proj
GROUP BY f_client
HAVING COUNT(f_client) > 100
再例:
【代码】--查询手机型号编码在数据库中重复出现了2次或以上的错误情况的信息
SELECT * FROM ts_tac WHERE tac in (
SELECT tac FROM ts_tac GROUP BY tac HAVING COUNT(*) > 1
)
可见,count(*) 等聚合函数可以不出现在SELECT的字段中,即可直接在HAVING中使用。
【代码】--查询出现了100次以上的客户名称及其次数
SELECT f_client,COUNT(f_client) FROM t_proj
GROUP BY f_client
HAVING COUNT(f_client) > 100
再例:
【代码】--查询手机型号编码在数据库中重复出现了2次或以上的错误情况的信息
SELECT * FROM ts_tac WHERE tac in (
SELECT tac FROM ts_tac GROUP BY tac HAVING COUNT(*) > 1
)
可见,count(*) 等聚合函数可以不出现在SELECT的字段中,即可直接在HAVING中使用。
本文探讨了SQL中聚合函数(COUNT(), SUM(), AVG()等)如何在统计查询中运用,并强调了它们在WHERE与HAVING子句中的区别与应用,通过实例展示了如何筛选特定次数出现的数据。
4万+

被折叠的 条评论
为什么被折叠?



