基础 SQL 查询可以检索、插入、更新和删除记录,而聚合查询可通过提供求和、平均值或最大/最小值等的大型结果集,将数据库交互提升到一个新的水平。本文中,我们将探索聚合 SQL 查询的基础知识,并研究如何有效的利用他们来分析和汇总数据。
SQL 中的聚合函数对行数据进行操作并返回单个值作为输出。当需要对数据库的数据执行计算时,这些函数是非常有用的。一些常用的聚合函数包括:
COUNT()
?函数计算满足指定条件的行数。可用于计算所有行或满足特定条件的行。
SELECT COUNT(*) AS total_records FROM employees;
SUM()
?函数计算数值列的总和。
SELECT SUM(salary) AS total_salary FROM employees;
AVG()
?函数用于确定数值列的平均值。
SELECT AVG(age) AS average_age FROM students;
MAX()
?和?MIN()
?函数分别用于定义一个列中的最大值和最小值。
SELECT MAX(price) AS max_price, MIN(price) AS min_price FROM products;
SQL 聚合查询的一个强大能力是使用?GROUP BY
?子句基于特定条件分组数据。这有助于对数据子集进行分析,从而获得更深入的了解数据。
SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;
SELECT department, AVG(salary) AS average_salary
FROM employees
GROUP BY department;
HAVING
?子句与?GROUP BY
?一起使用,用于对基于条件的分组数据的聚合查询结果进行筛选。
SELECT department, AVG(salary) AS average_salary
FROM employees
GROUP BY department
HAVING AVG(salary) > 50000;
SQL 允许在单个查询中组合使用多个聚合函数,以便更全面的了解数据。
SELECT department, COUNT(*) AS employee_count, AVG(salary) AS average_salary
FROM employees
GROUP BY department;
如果你不确定函数的准确名字或其输入参数,你可以在 SQL 编辑器中输入一部分,然后?Navicat?将显示一个匹配项的列表,你可以从中选择一个,Navicat 会动补全语句。聚合函数是用希腊 Sigma 符号表示 (Σ):
聚合 SQL 查询是在关系数据库中数据分析和数据报告的不可或缺的工具。无论你是要汇总信息、计算平均值,或是基于特定条件分组数据,了解如何利用聚合函数以及像?GROUP BY
?和?HAVING
?这样的子句,对于熟练的数据库查询是至关重要的。如果你想边学边用,欢迎点击?这里?下载 Navicat Premium 全功能试用版。