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)

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

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

相关推荐
恋红尘18 小时前
Mysql
数据库·mysql
paishishaba18 小时前
数据库设计原则
数据库
曹牧19 小时前
oracle:NOT IN
数据库·oracle
爬山算法19 小时前
Redis(66)Redis如何实现分布式锁?
数据库·redis·分布式
说私域20 小时前
基于开源AI大模型、AI智能名片与S2B2C商城小程序的购物中心精准零售数据架构研究
人工智能·小程序·开源
Super Rookie20 小时前
MongoDB 自动化脚本安装方案
数据库·mongodb·自动化
Code哈哈笑20 小时前
【MongoDB 基本语法】数据库和集合的基本操作--探秘 MongoDB
数据库·mongodb
CoderJia程序员甲20 小时前
GitHub 热榜项目 - 日榜(2025-10-18)
ai·开源·大模型·github·ai教程
恋红尘20 小时前
Redis面试八股
数据库·redis·面试
说私域21 小时前
开源链动2+1模式、AI智能名片与S2B2C商城小程序:社群经济的数字化重构路径
人工智能·小程序·开源