美文网首页
8. 分组数据

8. 分组数据

作者: 柄志 | 来源:发表于2018-09-10 23:53 被阅读0次

分组数据

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

创建分组

  • 分组使用SELECT 语句的GROUP BY 子句建立
SELECT column_name,COUNT(*) AS column_num
FROM table_name
GROUP BY column_name;
  • GROUP BY 子句可包含任意数目的列,因而可对分组进行嵌套,更细致地进行数据分组
  • 若果在GROUP BY 子句中嵌套了分组,数据将在最后指定的分组上进行汇总
  • GROUP BY 子句中列出的每一列都必须是检索列或有效的表达式(但不能是聚集函数)。如果在SELECT 中使用表达式,则必须在GROUP BY 子句中指定相同的表达式,不能使用别名。
  • 大多数SQL实现不允许GROUP BY 列带有长度可变的数据类型(如文本或备注型字段)
  • 出聚集计算语句外,SELECT 语句中的每一列都必须在GROUP BY 子句中给出
  • 如果分组列中包含NULL 值的行,则NULL将作为一个分组返回,如果列中有多行NULL 值,它们将分为一组

过滤分组

SELECT column_name,COUNT(*) AS column_num
FROM table_name
WHERE column_name = 'str'
GROUP BY column_name
HAVING COUNT(*) >= 2;
  • WHERE 过滤行;HAVING 过滤分组
  • WHERE 在数据分组前进行过滤;HAVING 在数据分组后进行过滤
  • 在SELECT指定的字段要么就要包含在GROUP BY语句的后面作为分组的依据;要么就要被包含在聚合函数中。

分组和排序

ORDER BY GROUP BY
对产生的输出排序 对行分组,但输出可能不是分组的排序
任意列都可以使用(甚至非选择的列也可以使用 只可能使用选择列或表达式列,而且必须使用每个选择列表达式
不一定需要 如果与聚集函数一起使用列(或表达式)则必须使用
  • 不要依赖GROUP BY 排序数据

相关文章

  • 8. 分组数据

    分组数据 使用分组可将数据分为多个逻辑组,对每个组进行聚集计算。 创建分组 分组使用SELECT 语句的GROUP...

  • 8.聚合与分组

    大数据分析的一个必要部分是高效的概况:计算聚合值sum(),mean(),median(),min()和max()...

  • 必知必会-第十三章

    分组数据 本章介绍如何分组数据,两个关键字GROUP BY和HAVING。 分组的作用 分组允许把数据分为多个逻辑...

  • 数据分析—利用pandas进行数据分组

    目标: 学会利⽤pandas对数据进⾏分组 知道如何提取分组后的数据 可以按多列进⾏分组 能够对分组后数据进⾏统计...

  • 第一章 数据分析的基础

    数据分析的前提是数据的搜集与加工处理 1.1 数据分组与变量数列 1.1.1 数据分组 数据分组 就是对某一变量不...

  • pandas group分组

    某列数据按照某列分组: 某列数据按照某几列分组: 所有数据按照某列分组: 按照数据类型划分列:

  • 分组数据

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

  • 分组数据

    1 介绍 分组返回数据,不是where的那种返回特定数据 2 创建分组(group by) 2.1 分析 按ven...

  • 数据分组

    group by关键字 作用:对查询结果进行分组处理 用法: 1.分组之后,不能将除分组字段之外的字段放在sele...

  • 《SQL必知必会》第 10 课 分组数据

    目标: 10.1 数据分组 10.2 创建分组 10.3 过滤分组 10.4 分组和排序 10.5 SELECT ...

网友评论

      本文标题:8. 分组数据

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