SELECT COUNT(*)
FROM Product;
count |
---|
8 |
Rui
November 11, 2022
5 个常用函数:
COUNT 计算表中的记录数(行数)
SUM 计算表中数值列中数据的合计值
AVG 计算表中数值列中数据的平均值
MAX 求出表中任意列中数据的最大值
MIN 求出表中任意列中数据的最小值
何谓“聚合”?
我的理解是:将整张表中大量的数据的特征以较少的数据展现出来称为“聚合”。
更简单粗暴一点来说就是“将多行汇总为一行”。
以 SUM 函数为例,原本 M 行 N 列的数据通过该函数得到仅 N 个平均值,并且可以反映数据整体水平。
计算全部数据的行数(返回结果为8):
之前学习过选择所有列是 SELECT *
,星号外没有括号。而这里星号外面需要括号。 这是因为 SELECT 是子句,COUNT 是函数,函数需要加括号。 函数括号中的值称为参数,输出值称为返回值,许多语言(R、Python)中也是如此。
除了可以选择全部数据以外,还可以将特定的列作为参数传入函数 COUNT 中:
这里返回的结果居然是 6。因为 purchase_price 一列包含 2 个 NULL, COUNT 不会计算 NULL 行。
SUM 函数计算累计值(求和)。
AVG 函数和 SUM 函数的使用方法一样,不受 NULL 的影响,会在计算时直接将 NULL 剔除。
方法 1:
方法 2:
为什么两种方法的结果不一样?方法 1 中关键字 DISTINCT 在括号内,会对 product_type 剔除重复数据再求行数;而方法 2 中关键字在 COUNT 函数外,说明是先求行数再剔除重复数据。