SQL聚合函数

时间:2020-02-23 14:32:22  来源:igfitidea点击:

SQL聚合函数基本上在多个列上进行操作以执行操作,并将输出表示为表示执行的操作的实体。

语法:

aggregate_function (DISTINCT | ALL expression)
  • DISTINCT使用户可以从表中选择不同的值,即,如果多个属性包含相同的值,则仅考虑单个不同的值进行计算。

  • ALL确保即使重复值也被考虑用于计算。

SQL中的聚合函数:

  • AVG()
  • MIN()
  • MAX()
  • SUM()
  • COUNT()

1. SQL AVG()函数

SQL AVG()函数从表的相应列返回所有选定值的平均值。

让我们考虑下表以了解汇总功能:

表名称:详细信息

IDNameAmountAge
1Safa500021
2Aman250023
3Rehaan2000025
4Seema1200025

例:

select AVG(Amount) from Details;

输出:

9875

2. SQL MIN()函数

SQL MIN()函数从表的相应列返回所有选定值的最小值。

例:

select MIN(Amount) from Details;

输出:

2500

3. SQL MAX()函数

SQL MAX()函数从表的相应列返回所有选定值的最大值。

select MAX(Amount) from Details;

输出:

20000

4. SQL SUM()函数

SQL SUM()函数从表的相应列返回所有选定值的总和。

示例1:SUM()函数的基本理解

select SUM(Amount) from Details;

输出:

39500

示例2:带有GROUP BY子句的SQL SUM()

SQL SUM()可以与SQL GROUP BY子句一起构成框架,以特定的标签/值表示输出结果。

SELECT SUM(Amount),Name  
FROM Details 
WHERE Age>21 
GROUP BY Name;  

示例3:具有HAVING子句的SQL SUM()

SQL SUM()函数可以与SQL HAVING子句一起使用。
HAVING子句基本上用于指定要对表中的一组值进行操作的条件。

SELECT SUM(Amount),Name  
FROM Details 
GROUP BY Name
HAVING SUM(Amount)>2500;

5. SQL COUNT()函数

示例1:COUNT()函数返回表中特定列的计数

select COUNT(Amount) from Details;

输出:

4

示例2:COUNT(*)函数

此函数返回表的记录集中存在的所有值的计数。

SELECT count(*) from Details;

输出:

4

示例3:带有WHERE子句的COUNT()

SELECT count(*) from Details
where Age<25;

输出:

2

示例4:COUNT()和GROUP BY子句

SELECT count(Amount),Name from Details
where Age<25
Group by Name;

示例5:具有HAVING子句的COUNT()

SELECT count(Amount),Age, Name from Details
Group by Name
HAVING Age>=25;