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 小时前
Viking AI 搜索 CLI 正式发布:会说话,就能做搜索推荐
数据库·人工智能·开源
TechWJ2 小时前
数据库在公司内网,出差路上想查数据怎么办?
服务器·数据库·mariadb
我是一颗柠檬2 小时前
【MySQL全面教学】MySQL事务与ACID Day9(2026年)
数据库·后端·mysql
橙子圆1232 小时前
Redis知识9之集群
数据库·redis·缓存
BlackHeart12033 小时前
【SQL】Oracle中序列(Sequence)作为默认值引发的ORA-00979
数据库·sql·oracle
一点事3 小时前
docker:安装oracle 19c
docker·oracle·容器
bug菌3 小时前
【SpringBoot 3.x 第254节】夯爆了,数据库访问性能优化实战详解!
数据库·spring boot·后端
xxl大卡4 小时前
MySQL的执行流程
数据库·mysql
chicheese4 小时前
MySQL优化实践:选错JOIN 驱动表,性能相差几十倍
数据库·mysql
無限進步D4 小时前
MySQL 单行函数
数据库·mysql