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 子句在数据分组后对聚合函数的结果进行过滤。
相关推荐
纪莫1 小时前
技术面:MySQL篇(InnoDB的锁机制)
java·数据库·java面试⑧股
Filotimo_1 小时前
在java开发中,cron表达式概念
java·开发语言·数据库
DBA小马哥2 小时前
从MongoDB迁移到金仓数据库:数据模型与业务连续性难题的保姆级指南
数据库·mongodb·dba
QZ166560951592 小时前
低误差率、高性能、符合审计要求的金融数据库审计和监测最佳实践指南
数据库·金融
愚公移码2 小时前
蓝凌EKP产品:主文档权限机制浅析
java·前端·数据库·蓝凌
此生只爱蛋3 小时前
【Redis】持久化
数据库·redis
burning_maple4 小时前
redis笔记
数据库·redis·笔记
oh LAN4 小时前
提升性能:数据库与 Druid 连接池优化指南
数据库·mysql
砚边数影4 小时前
AI数学基础(一):线性代数核心,向量/矩阵运算的Java实现
java·数据库·人工智能·线性代数·矩阵·ai编程·金仓数据库
虹科网络安全4 小时前
艾体宝新闻 | Redis 月度更新速览:2025 年 12 月
数据库·redis·缓存