openGauss学习笔记-22 openGauss 简单数据管理-HAVING子句

openGauss学习笔记-22 openGauss 简单数据管理-HAVING子句22.1 语法格式22.2 参数说明22.3 示例

openGauss学习笔记-22 openGauss 简单数据管理-HAVING子句

HAVING子句可以让我们筛选分组后的各组数据。

WHERE子句在所选列上设置条件,而HAVING子句则在由GROUP BY子句创建的分组上设置条件。

22.1 语法格式

sql 复制代码
SELECT 
{ * | [column, ...] }
[ FROM from_item [, ...] ]
[ WHERE condition ]
[ GROUP BY grouping_element [, ...] ]
[ HAVING condition [, ...] ]
[ ORDER BY {expression [ ASC | DESC ] }];

22.2 参数说明

  • HAVING子句

    与GROUP BY子句配合用来选择特殊的组。HAVING子句将组的一些属性与一个常数值比较,只有满足HAVING子句中的逻辑表达式的组才会被提取出来。

22.3 示例

下面实例将找出根据c_first_name字段值进行分组,并且c_first_name字段的计数少于 2 数据:

sql 复制代码
openGauss=# SELECT c_first_name FROM customer_t1 GROUP BY c_first_name HAVING count(c_first_name) < 2;

结果如下。

markdown 复制代码
 c_first_name
--------------
 James
 Local
​
 Joes
(4 rows)

下面实例将找出根据c_first_name字段值进行分组,并且名称的计数大于1数据:

sql 复制代码
openGauss=# SELECT c_first_name FROM customer_t1 GROUP BY c_first_name HAVING count(c_first_name) > 1;

结果如下。

markdown 复制代码
 c_first_name
--------------
 Grace
 Lily
(2 rows)

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

相关推荐
LinXunFeng5 小时前
Draw Things 换装 LoRA 实战:用 Silo 秒装,同一提示词对比出图
人工智能·开源·aigc
AIgorithmGEEK5 小时前
MySQL 索引全解(下):建、查、删实战与知识速查表
数据库·mysql·b+树·索引
暖核7 小时前
企业级开源监控解决方案:Zabbix 6.0 部署与配置全流程详解
开源·zabbix
不是万能的豆学长7 小时前
开发者分化与开源生态观察
开源
Flynt7 小时前
开源"间谍卫星"说数据全是真的,我把它的免key数据源挨个试了一遍
前端·开源·数据可视化
唠点键盘之外的7 小时前
26 向量数据库实战:从 0 搭一条能用的检索链路(pgvector + Spring AI)
数据库·人工智能·spring
云和恩墨8 小时前
数据库监控简史:监控不止于告警——从图表大爆发到健康管理闭环
数据库
冬奇Lab8 小时前
开源项目第235期:REA — 让 AI Agent 逆向任何东西,从网站/Electron 应用一路分析到二进制层
人工智能·开源·资讯
ly76898 小时前
MongoDB 事务开销实测:快照隔离下的写冲突、重试与分片事务边界
数据库·mongodb·事务·分片集群·快照隔离·写冲突
豆角焖肉8 小时前
Spring AOP 自定义注解实现系统操作日志
数据库·自定义注解·springaop·操作日志·aop 切面