MySQL COUNT() 函数返回表达式的计数。

MySQL SUM() 函数返回表达式的求和值。

MySQL AVG() 函数返回表达式的平均值。

MySQL COUNT() 函数

MySQL COUNT() 函数返回表达式的计数。

语法

在 MySQL 中使用 COUNT() 函数的语法如下:

SELECT COUNT(column_name) 
FROM table_name
WHERE condition(s); 

使用 MySQL GROUP BY 子句当使用一列或多列时,将结果表排列成相同的组。请注意,必须在 GROUP BY 子句中包含那些未封装在 COUNT() 函数中的列名。请参阅以下语法:

SELECT column1, column2, ...
       COUNT(column_name) 
FROM table_name
WHERE condition(s)
GROUP BY column1, column2, ...; 

示例 - 单列

考虑一个名为 Employee 的数据库表,其中包含以下记录:

EmpIDNameCityAgeSalary
1JohnLondon253000
2MarryNew York242750
3JoParis272800
4KimAmsterdam303100
5RameshNew Delhi283000
6HuangBeijing282800

要获取年龄大于 25 岁的员工数量,可以使用以下查询:

SELECT COUNT(Name) AS EmployeeGT25 
FROM Employee
WHERE Age > 25; 

这将产生如下所示的结果:

EmployeeGT25
4

示例 - 使用 DISTINCT

DISTICT 子句可与 COUNT() 函数一起使用。例如 - 要获取员工的不同(唯一)年龄的计数,可以使用以下代码:

SELECT COUNT(DISTINCT Age) AS DistinctAge 
FROM Employee; 

这将产生如下所示的结果:

DistinctAge
5

示例 - 使用 GROUP BY

要获取按年龄分组的员工数量,可以使用以下查询:

SELECT Age, COUNT(Age) AS NumberOfEmployee 
FROM Employee
GROUP BY Age; 

上述代码的结果将是:

AgeNumberOfEmployee
241
251
271
282
301

MySQL SUM() 函数

MySQL SUM( ) 函数返回表达式的求和值。

语法

在 MySQL 中使用 SUM() 函数的语法如下:

SELECT SUM(column_name) 
FROM table_name
WHERE condition(s); 

MySQL GROUP BY 子句用于在使用一列或多列时将结果表排列成相同的组。请注意,必须在 GROUP BY 子句中包含那些未封装在 SUM() 函数中的列名。请参阅以下语法:

SELECT column1, column2, ...
       SUM(column_name) 
FROM table_name
WHERE condition(s)
GROUP BY column1, column2, ...; 

示例 - 单列

考虑一个名为 Employee 的数据库表,其中包含以下记录:

EmpIDNameCityAgeSalary
1JohnLondon253000
2MarryNew York242750
3JoParis272800
4KimAmsterdam303100
5RameshNew Delhi283000
6HuangBeijing282800

要获取年龄大于 25 岁的所有员工的总工资,可以使用以下查询:

SELECT SUM(Salary) AS TotalSalary 
FROM Employee
WHERE Age > 25; 

这将产生如下所示的结果:

TotalSalary
11700

示例 - 使用 DISTINCT

DISTICT 子句可与 SUM() 函数一起使用。例如 - 要获取不同(唯一)工资的总工资,可以使用以下代码:

SELECT SUM(DISTINCT Salary) AS TotalUniqueSalary 
FROM Employee; 

这将产生如下所示的结果:

TotalUniqueSalary
11650

示例 - 使用公式

SUM() 函数中包含的表达式不必是单个字段。此函数还可以使用公式。例如 - 考虑向每位员工发放奖金(工资的 15%),要计算奖金总额,可以使用以下查询:

SELECT SUM(Salary * 0.15) AS TotalBonusAmount
FROM Employee; 

这将产生结果如下所示:

TotalBonusAmount
2617.5

示例 - 使用 GROUP BY

要获取员工按年龄分组的总工资,可以使用以下查询:

SELECT Age, SUM(Salary) AS TotalSalaryByAge 
FROM Employee
GROUP BY Age; 

上述代码的结果将是:

AgeTotalSalaryByAge
242750
253000
272800
285800
303100

MySQL AVG()函数

MySQL AVG() 函数返回表达式的平均值。

语法

在 MySQL 中使用 AVG() 函数的语法如下所示:

SELECT AVG(column_name) 
FROM table_name
WHERE condition(s); 

MySQL GROUP BY 子句用于在使用一列或多列时将结果表排列成相同的组。请注意,必须在 GROUP BY 子句中包含那些未封装在 AVG() 函数中的列名。请参阅以下语法:

SELECT column1, column2, ...
       AVG(column_name) 
FROM table_name
WHERE condition(s)
GROUP BY column1, column2, ...; 

示例 - 单列

考虑一个名为 Employee 的数据库表,其中包含以下记录:

EmpIDNameCityAgeSalary
1JohnLondon253000
2MarryNew York242750
3JoParis272800
4KimAmsterdam303100
5RameshNew Delhi283000
6HuangBeijing282800

要获取年龄大于 25 岁的员工的平均工资,可以使用以下查询:

SELECT AVG(Salary) AS AvgSalary 
FROM Employee
WHERE Age > 25; 

这将产生如下所示的结果:

AvgSalary
2925.0

示例 - 使用 DISTINCT

DISTICT 子句可与 AVG() 函数一起使用。例如 - 要获取不同(唯一)工资的平均值,可以使用以下代码:

SELECT AVG(DISTINCT Salary) AS AvgUniqueSalary 
FROM Employee; 

这将产生如下所示的结果:

AvgUniqueSalary
2912.5

示例 - 使用公式

AVG() 函数中包含的表达式不必是单个字段。此函数还可以使用公式。例如 - 考虑向每位员工发放奖金(工资的 15%),要计算奖金金额的平均值,可以使用以下查询:

SELECT AVG(Salary * 0.15) AS AvgBonusAmount
FROM Employee; 

这将生成结果如下所示:

AvgBonusAmount
436.25

示例 - 使用 GROUP BY

要按年龄获取员工组的平均工资,可以使用以下查询:使用:

SELECT Age, AVG(Salary) AS AvgSalaryByAge 
FROM Employee
GROUP BY Age; 

上述代码的结果将是:

AgeAvgSalaryByAge
242750.0
253000.0
272800.0
282900.0
303100.0