sum函数搭配group by /having的案例说明

记录一些常用的函数及用法

--查询份额大于1w的投资人信息。

  1. 聚合数据的筛选 :当你需要基于聚合函数(如 SUM(), AVG(), MAX(), MIN(), COUNT() 等)的结果来过滤记录时,使用 HAVING 子句。

  2. 组合条件HAVING 子句可以使用逻辑运算符(如 AND, OR)来组合多个条件。

参考示例

select t.vc_tradeacco,SUM(t.en_totalshare) from tstaticshare t group by t.vc_tradeacco having SUM(t.en_totalshare) >10000 order by 1 desc

在这个例子中:

  • GROUP BY vc_tradeacco 将结果按 vc_tradeacco 分组。
  • SUM(en_totalshare) 是一个聚合函数,它计算每个 vc_tradeacco 的总销量。
  • HAVING SUM(en_totalshare) > 10000 是对聚合后的结果进行过滤的条件,它只选择那些总份额超过 10000 的记录。

HAVINGWHERE 子句的区别

  • WHERE 子句在数据分组前对行进行过滤,它不能使用聚合函数。如图所示,在where前面使用会报错ora-00933 sal命令未正确结束
  • HAVING 子句在数据分组后对聚合函数的结果进行过滤。
相关推荐
ss2736 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
l1t6 小时前
DeepSeek总结的数据库外部表
数据库
m0_674294646 小时前
如何编写SQL存储过程性能对比_记录执行时间评估优化效果
jvm·数据库·python
014-code7 小时前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库
运气好好的7 小时前
怎样开启phpMyAdmin的操作审计日志_记录每条执行的SQL
jvm·数据库·python
それども8 小时前
DELETE 和 TRUNCATE TABLE区别
java·数据库·mysql
wenha8 小时前
数据库隔离级别
数据库·mysql·sqlserver·隔离级别
2401_871492858 小时前
Layui如何修改Layui默认的UI主题颜色(换肤功能实现)
jvm·数据库·python
Edward111111118 小时前
4.27mysql ,数据库,数据源
数据库·mysql
小徐敲java8 小时前
踩坑实录:MySQL8.0 导入SQL报错 2006 - MySQL server has gone away 完美解决
数据库·sql