聚合函数
count () 总条数
MySQL count() 函数用于返回表达式的计数。当您需要计算表的某些记录时,将使用它。
语法:
SELECT COUNT (aggregate_expression)
FROM table_name
[WHERE conditions];
参数解释
- aggregate_expression 它指定列或表达式,其非空值将被计算。
- table_name 它指定表,从那里你要检索的记录。必须有 FROM 子句中至少列出一个表。
- WHERE 条件 这是可选的。它指定要选择的记录所必须满足的条件。
例子1:(只要该字段的值不为空就统计)
SELECT COUNT(officer_name)
FROM officers;
在这里,可以看到 COUNT () 函数计算出表中军官的总数。
sum () 合计
MySQL sum () 函数的作用是:返回一个表达式的总和。
语法:
SELECT SUM(aggregate_expression)
FROM tables
[WHERE conditions];
参数解释
- aggregate_expression: 指定需要求和的列或表达式。
- table_name: 指定需要检索记录的表名,至少有一个表列在 FROM 子句中。
- WHERE conditions: 可选,指定必须满足的条件,以便选择记录。
例子1:
SELECT SUM (working_hours) AS "Total working hours"
FROM employees
WHERE working_hours > 5;
avg () 求平均值
MySQL avg() 函数的作用是:返回一个表达式的平均值。
语法:
SELECT AVG(aggregate_expression)
FROM tables
[WHERE conditions];
参数解释
- aggregate_expression: 指定需要取平均值的列或表达式。
- table_name: 指定需要检索记录的表名,至少有一个表列在 FROM 子句中。
- WHERE conditions: 可选,指定必须满足的条件,以便选择记录。
例子1:
SELECT AVG(working_hours) AS "Avg working hours"
FROM employees
WHERE working_hours > 5;
min () 取最小值
MySQL min() 函数的作用是:从表中返回最小值。
语法:
SELECT MIN (aggregate_expression)
FROM tables
[WHERE conditions];
参数解释
- aggregate_expression: 指定将从中返回最小值的列或表达式。
- table_name: 指定需要检索记录的表名,至少有一个表列在 FROM 子句中。
- WHERE conditions: 可选,指定必须满足的条件,以便选择记录。
例子1:
SELECT MIN (working_hours) AS "Minimum working hours"
FROM employees;
max () 取最大值
MySQL max()
函数用于返回表达式的最大值,当您需要从表中获取最大值时,可以使用该函数。
语法:
SELECT MAX(aggregate_expression)
FROM tables
[WHERE conditions];
参数介绍
- aggregate_expression:指定需要返回最大值的列或表达式。
- table_name: 指定需要检索记录的表名,至少有一个表列在 FROM 子句中。
- WHERE conditions:可选,指定必须满足的条件,以便选择记录
例子1:
SELECT MAX (working_hours) AS "Maximum working hours"
FROM employees;
取第一条数据
MYSQL 的 First 函数用于返回所选字段的第一个值。在这里,我们使用 limit 语句来查询第一条记录或更多。
语法:
SELECT column_name
FROM table_name
LIMIT 1;
例子1:
SELECT officer_name
FROM officers
LIMIT 1;
选择前二条记录:
SELECT officer_name
FROM officers
LIMIT 2;
取最后一条数据 (通过order by排序后再limit1)
MySQL LAST() 函数返回指定列的最后一个值。
语法:
SELECT column_name
FROM table_name
ORDER BY column_name DESC
LIMIT 1;
例子1:
SELECT officer_name
FROM officers
ORDER BY officer_id DESC
LIMIT 1;
该查询将会返回最后一个 officer_name 的值, 通过降序 officer_id
以下,返回最后一个 officer_name 的值按 officer_name 降序 :
SELECT officer_name
FROM officers
ORDER BY officer_name DESC
LIMIT 1;