当前位置: 首页 > article >正文

数据库基础(聚合函数 分组 排序)

1.聚合函数

 聚合函数是SQL中的一类特殊函数,它们用于计算一组数据的集合并返回单个值。这些函数通常用于数据的统计分析,如个数的统计、某列数据的求和、最大值、最小值以及平均值等。 

COUNT

说明:返回查询结果中数据的数量。如果指定了DISTINCT关键字,则只计算不同值的数量。
示例:SELECT COUNT(*) FROM employees; 返回employees表中的记录数。


SUM

说明:返回查询结果中数据的总和。如果列中的数据不是数字类型,则该函数没有意义。如果指定了DISTINCT关键字,则只计算不同值的总和。
示例:SELECT SUM(salary) FROM employees; 返回employees表中所有员工的工资总和。


AVG

说明:返回查询结果中数据的平均值。如果列中的数据不是数字类型,则该函数没有意义。如果指定了DISTINCT关键字,则只计算不同值的平均值。
示例:SELECT AVG(salary) FROM employees; 返回employees表中所有员工工资的平均值。


MAX

说明:返回查询结果中的最大值。如果列中的数据不是可以比较的类型(如数字或日期),则该函数没有意义。如果指定了DISTINCT关键字,则只在不同值中查找最大值。
示例:SELECT MAX(salary) FROM employees; 返回employees表中工资最高的值。


MIN

说明:返回查询结果中的最小值。与MAX函数类似,它也只适用于可以比较的数据类型。如果指定了DISTINCT关键字,则只在不同值中查找最小值。
示例:SELECT MIN(salary) FROM employees; 返回employees表中工资最低的值。

2.分组

分组函数常与 GROUP BY 子句结合使用 按某列或多列进行分组 然后对每个组应用分组函数

SELECT column1, aggregate_function(column2), ...
FROM table_name
[WHERE condition]
GROUP BY column1, column2, ...
[HAVING group_condition]
[ORDER BY column1, column2, ... [ASC|DESC]];
  • SELECT:指定要查询的列,通常包含分组列和聚合函数。聚合函数包括 SUM()COUNT()AVG()MAX()MIN() 等。
  • FROM:指定要查询的表名。
  • WHERE:可选子句,用于筛选满足特定条件的行,在分组之前进行过滤。
  • GROUP BY:指定要分组的列,可以是一个或多个列。
  • HAVING:可选子句,用于筛选满足特定条件的分组,在分组之后进行过滤。
  • ORDER BY:可选子句,用于对结果集进行排序,可以指定升序(ASC)或降序(DESC)。

三.排序

MySQL 里使用 ORDER BY 子句来实现排序,可按照一列或多列对查询结果进行升序或降序排列。

  • 使用ORDER BY 字句排序,在其后面加所需字段

    • ASC(ascend): 升序

    • DESC(descend): 降序

  • ORDER BY 字句在SELECT语句的结尾


http://www.kler.cn/a/612854.html

相关文章:

  • 【数据结构】C语言实现并查集:双亲指针映射与动态连通性实现详解
  • Go 语言标准库中sort模块详细功能介绍与示例
  • 【学Rust写CAD】16 零标记类型(zero.rs)
  • LogitsProcessor代码分析
  • 3.28日,NBA,欧篮联全扫盘,太阳VS森林狼
  • 小林coding-10道Java集合面试题
  • 深入理解 dispatchEvent:前端事件触发的艺术
  • DPO介绍+公式推理
  • C++中的智能指针
  • Spring Boot深度解析:从核心原理到最佳实践
  • 美颜SDK架构解析:如何高效处理人脸美型的计算任务?
  • kubernetes》》k8s》》 kubeadm、kubectl、kubelet
  • [原创](Modern C++)现代C++的关键性概念: 如何利用多维数组的指针安全地遍历所有元素
  • NoSQL 数据库的适用场景与局限性分析
  • 7.5考研408数据结构散列表专题深度解析
  • Java EE 进阶:MyBatis-plus
  • SQL 复杂查询和性能优化
  • ubuntu 2204键盘按键映射修改
  • nginx部署前端项目(linux、docker)
  • 解锁大语言模型潜力:LangChain,构建AI应用的全新框架