×
PostgreSQL教程PostgreSQL是什么?PostgreSQL历史PostgreSQL特点PostgreSQL命令语法大全PostgreSQL数据类型PostgreSQL安装(Windows)PostgreSQL创建数据库PostgreSQL删除数据库PostgreSQL创建表PostgreSQL删除表PostgreSQL模式(架构)

查询

PostgreSQL插入数据(INSERT语句)PostgreSQL查询数据(SELECT语句)PostgreSQL更新数据(UPDATE语句)PostgreSQL删除数据(DELETE语句)PostgreSQL ORDER BY子句PostgreSQL分组(GROUP BY子句)PostgreSQL Having子句PostgreSQL条件查询PostgreSQL AND条件PostgreSQL OR条件PostgreSQL AND & OR条件PostgreSQL NOT条件PostgreSQL LIKE条件PostgreSQL IN条件PostgreSQL NOT IN条件PostgreSQL BETWEEN条件

连接

PostgreSQL连接(内连接)PostgreSQL左外连接PostgreSQL右外连接PostgreSQL全外连接PostgreSQL交叉连接(CROSS JOIN)

高级部分

PostgreSQL视图PostgreSQL函数(存储过程)PostgreSQL触发器PostgreSQL别名PostgreSQL索引PostgreSQL日期和时间函数PostgreSQL UNIONS子句PostgreSQL NULL值PostgreSQL修改表(ALTER TABLE语句)PostgreSQL截断表(TRUNCATE TABLE语句)PostgreSQL事务PostgreSQL锁PostgreSQL子查询PostgreSQL自动递增PostgreSQL权限

程序连接接口

C/C++连接PostgreSQL数据库Java连接PostgreSQL数据库PHP连接PostgreSQL数据库Perl连接PostgreSQL数据库Python连接PostgreSQL数据库

PostgreSQL Having子句


在PostgreSQL中,HAVING子句与GROUP BY子句组合使用,用于选择函数结果满足某些条件的特定行。

语法:

SELECT column1, column2  
FROM table1, table2  
WHERE [ conditions ]  
GROUP BY column1, column2  
HAVING [ conditions ]  
ORDER BY column1, column2

示例1:

我们来看一下表“EMPLOYEES”,具有以下数据。

在这个例子中,它将显示名称(name)数量小于2的记录。

执行以下查询:

SELECT NAME   
FROM EMPLOYEES  
GROUP BY NAME HAVING COUNT (NAME) < 2;

得到结果如下 -

示例2:

我们在“EMPLOYEES”表中插入一些重复的记录,首先添加以下数据:

INSERT INTO EMPLOYEES VALUES (7, 'Minsu', 24, 'Delhi', 135000);  
INSERT INTO EMPLOYEES VALUES (8, 'Manisha', 19, 'Noida', 125000);

现在完整的数据如下所示 -

执行以下查询表“EMPLOYEES”中name字段值计数大于1的名称。

SELECT NAME,COUNT (NAME) 
FROM EMPLOYEES  
GROUP BY NAME HAVING COUNT (NAME) > 1;

得到结果如下 -

这是因为名字为 MinsuManisha 有两条记录。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)