美文网首页
【SQL】(十):分组数据

【SQL】(十):分组数据

作者: Lottie2017 | 来源:发表于2020-07-13 16:31 被阅读0次

本系列为自己学习时的笔记及心得体会,转载请注明出处。

1、数据分组

如果要返回每个供应商提供的产品数据,那就需要使用分组了。

使用分组可以将数据分为多个逻辑组,对每个组进行聚集计算。


select vend_id,COUNT(*) AS num_prods

FROM Products

GROUP BY vend_id


输出如下:

返回每个供应商下的商品数量

注意:GROUP BY 子句必须出现在WHERE子句之后,ORDER BY子句之前。

2、过滤分组

因为WHERE子句只能过滤行,所以我们这里使用HAVING 来过滤分组。WHERE的所有技术和选项都适用于HAVING。


select vend_id,COUNT(*) AS num_prods

FROM Products

GROUP BY vend_id

HAVING COUNT(*)>2


返回有两个以上商品的供应商

对比如下语句,可发现:

△WHERE是在数据分组前进行过滤,HAVING在数据分组后进行过滤。


select vend_id,COUNT(*) AS num_prods

FROM Products

where prod_price>=4

GROUP BY vend_id

HAVING COUNT(*)>2


返回有两个以上 商品价格大于4的商品的供应商

3、对结果进行排序

使用ORDER BY。如下:

先GROUP BY获取结果,后ORDER BY排序

4、SELECT语句中子句的顺序

SELECT-》FROM-》WHERE-》GROUP BY-》HAVING-》ORDER BY

相关文章

  • 【SQL】(十):分组数据

    本系列为自己学习时的笔记及心得体会,转载请注明出处。 1、数据分组 如果要返回每个供应商提供的产品数据,那就需要使...

  • SQL 分组数据

    连载的上一篇文章,我们讲到通过 SQL 聚合函数可以汇总数据,比如对行进行计数,计算和与平均数,获取最大值和最小值...

  • SQL 学习笔记

    SQL基础 参考书籍: 《SQL必知必会》 检索数据 过滤数据 函数 分组数据 子查询 简单联结 法一: 法二: ...

  • SQL必知必会读书笔记10

    分组数据 数据分组 使用SQL聚集函数可以汇总数据,这样我们就能够不检索所有数据就获得最大值和最小值。通过分组可以...

  • 数据库的数据分组GROUP BY

    1、数据分组入门 数据分组用来将数据分为多个逻辑组,从而可以对每个组进行聚合运算。SQL语句中使用 GROUP B...

  • 中文文档 pyspark.sql.DataFrame

    class pyspark.sql.DataFrame(jdf, sql_ctx) 分布式的收集数据分组到命名列中...

  • 【SQL Server 第1篇】T-SQL概述

    T-SQL是SQL Server系统产品独有的关系数据库系统语言。 T-SQL主要由三部分组成 DDL:数据定义语...

  • Pandas-分组函数和分层索引的展开

    分组函数groupby 在处理数据的时候经常会用到分组,类似于SQL中的group by,按照group by后面...

  • SQL学习八、分组数据

    我们在查询数据时经常会根据数据的某一特性进行分类获取,这就是这篇文章要记录的两个SELECT的子句:GROUP B...

  • _10_ SQL 数据分组

    本文DEMO https://gitee.com/changsanjiang/SQLDemo/tree/maste...

网友评论

      本文标题:【SQL】(十):分组数据

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