博客
关于我
mysql加强(3)~分组(统计)查询
阅读量:789 次
发布时间:2023-02-12

本文共 850 字,大约阅读时间需要 2 分钟。

SQL 分组查询(统计查询)指南

1. 语法说明

在 SQL 中,分组查询用于对数据进行聚合和统计。以下是分组查询的基本语法结构:

select [distinct] {字段} [字段别名], ... [统计函数]from 表名 [表别名][where 条件]group by {分组字段} [, 分组字段][having 统计后的过滤条件][order by 排序字段 asc|desc [, 排序字段 asc|desc]];

2. 分组查询注意事项

需要注意以下几点:

  • 查询字段必须是分组字段或统计函数字段

    需要注意的是,select语句中选择的字段必须是分组字段或统计函数字段,否则会导致错误。

  • 不能在where子句中使用组函数

    统计函数(如avg、sum等)不能在where子句中使用。

  • 使用having进行过滤

    对分组结果进行过滤时,应使用having子句。

3. 分组的执行顺序

通常的 SQL 执行顺序是:from → where → group by → having → select → order by → limit。

4. where 和 having 的区别

  • where:在分组之前进行过滤,用于排除不合法数据。
  • having:在分组之后进行过滤,用于对分组结果进行筛选。

5. 并列分组

并列分组是指一个字段包含多个值,根据这些值对数据进行分组。例如:

select deptno, job, avg(sal) from emp group by deptno, job;

6. SQL 语句执行顺序

在编写 SQL 语句时,应遵循以下顺序:

  • from:选择需要查询的表。
  • where:在分组之前对数据进行过滤。
  • group by:根据分组字段对数据进行分组。
  • having:对分组后的结果进行过滤。
  • select:选择需要显示的字段。
  • order by:对结果进行排序。
  • limit:设置结果的数量限制。
  • 通过以上步骤,可以确保 SQL 语句的正确执行和结果的准确性。

    转载地址:http://fmbfk.baihongyu.com/

    你可能感兴趣的文章