博客
关于我
mysql加强(3)~分组(统计)查询
阅读量:796 次
发布时间: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/

    你可能感兴趣的文章
    MySQL中的IO问题分析与优化
    查看>>
    MySQL中的ON DUPLICATE KEY UPDATE详解与应用
    查看>>
    mysql中的rbs,SharePoint RBS:即使启用了RBS,内容数据库也在不断增长
    查看>>
    mysql中的undo log、redo log 、binlog大致概要
    查看>>
    Mysql中的using
    查看>>
    MySQL中的关键字深入比较:UNION vs UNION ALL
    查看>>
    MYSQL中频繁的乱码问题终极解决
    查看>>
    Mysql主从不同步
    查看>>
    mysql主从同步及清除信息
    查看>>
    MySQL主从复制几个重要的启动选项
    查看>>
    MySQL主从架构与读写分离实战
    查看>>
    MySQL主从篇:死磕主从复制中数据同步原理与优化
    查看>>
    mysql主从配置
    查看>>
    MySQL之2003-Can‘t connect to MySQL server on ‘localhost‘(10038)的解决办法
    查看>>
    MySQL之CRUD
    查看>>
    MySQL之DML
    查看>>
    Mysql之IN 和 Exists 用法
    查看>>
    Mysql之主从复制
    查看>>
    mysql之分组查询GROUP BY,HAVING
    查看>>
    mysql之分页查询
    查看>>