美文网首页PostgreSQL程序员
PostgreSQL分组(GROUP BY子句)

PostgreSQL分组(GROUP BY子句)

作者: 易百教程 | 来源:发表于2017-04-09 09:49 被阅读79次

PostgreSQL GROUP BY子句用于将具有相同数据的表中的这些行分组在一起。 它与SELECT语句一起使用。

GROUP BY子句通过多个记录收集数据,并将结果分组到一个或多个列。 它也用于减少输出中的冗余。

语法:

SELECT column-list  
FROM table_name  
WHERE [conditions ]  
GROUP BY column1, column2....columnN  
ORDER BY column1, column2....columnN  

注意:在GROUP BY多个列的情况下,您使用的任何列进行分组时,要确保这些列应在列表中可用。

看看下面的例子:

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

执行以下查询:

SELECT NAME, SUM(SALARY)   
FROM EMPLOYEES   
GROUP BY NAME; 

查询得到如下结果 -


如何减少冗余数据:

再来看看下面这个例子:

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

INSERT INTO EMPLOYEES VALUES (6, '李洋', 24, '深圳市福田区中山路', 135000);  
INSERT INTO EMPLOYEES VALUES (7, 'Manisha', 19, 'Noida', 125000);  
INSERT INTO EMPLOYEES VALUES (8, 'Larry', 45, 'Texas', 165000);  

现在有以下数据,有一些数据是重复的 -

执行以下查询以消除冗余:

SELECT NAME, SUM(SALARY)   
FROM EMPLOYEES   
GROUP BY NAME; 

上面的SQL语句是按名字(NAME)执行分组统计每个名字的薪水总额,如:两个名字叫作李洋的薪水总额是:320000等等,得到结果如下 -

在上面的例子中,当我们使用GROUP BY NAME时,可以看到重复的名字数据记录被合并。 它指定GROUP BY减少冗余。

发布于:http://www.yiibai.com/postgresql/

相关文章

  • PostgreSQL分组(GROUP BY子句)

    PostgreSQL GROUP BY子句用于将具有相同数据的表中的这些行分组在一起。 它与SELECT语句一起使...

  • MySQL 基础语法

    分组数据 数据分组 分组是在SELECT语句的GROUP BY子句中建立的。 GROUP BY子句可以包含任意数目...

  • chapter13:分组数据

    分组数据以便能汇总表内容的子集,GROUP BY子句和HAVING子句。 创建分组 GROUP BY子句可以包含任...

  • GROUP BY 与 HAVING

    GROUP BY 将数据按某些列进行逻辑分组 GROUP BY 位于 WHERE 子句之后,ORDER BY 子句...

  • MySQL分组数据

    1. GROUP BY子句GROUP BY子句可以包含任意数目的列,使得能对分组进行嵌套,嵌套后的分组将在最后的分...

  • 分组数据

    group by 创建分组 出现在where子句之后,order by子句之前having select vend...

  • PostgreSQL Having子句

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

  • MySQL白菜教程(Level 7)

    1. 分组查询 GROUP BY 子句GROUP BY 函数就是 SQL 中用来实现分组的函数,其用于结合聚合函数...

  • 8_mysql查询之其它子句

    GROUP BY子句 GROUP BY子句主要用于根据字段对行分组。通常和聚合函数一起使用 举例一:将xscj数据...

  • 数据库学习笔记——10分组数据

    主要学习GROUP BY子句和HAVING子句 1 数据分组 使用分组可以将数据分为多个逻辑组,对每个组进行聚集计...

网友评论

    本文标题:PostgreSQL分组(GROUP BY子句)

    本文链接:https://www.haomeiwen.com/subject/mcqdattx.html