📅  最后修改于: 2023-12-03 15:11:53.209000             🧑  作者: Mango
在数据分析和数据处理中,经常需要使用 SQL 语句来获取各种统计值。下面是一些常见的获取统计值的 SQL 语句。
COUNT 函数用于计算指定列或表中的行数。可以使用 COUNT(*) 计算表中的所有行数,或者使用 COUNT(column) 计算指定列中非 NULL 值的行数。
-- 计算表中的行数
SELECT COUNT(*) FROM table_name;
-- 计算指定列中非 NULL 值的行数
SELECT COUNT(column_name) FROM table_name;
SUM 函数用于计算指定列的总和。如果列中有 NULL 值,则 NULL 会被忽略。
-- 计算指定列的总和
SELECT SUM(column_name) FROM table_name;
AVG 函数用于计算指定列的平均值。如果列中有 NULL 值,则 NULL 会被忽略。
-- 计算指定列的平均值
SELECT AVG(column_name) FROM table_name;
MAX 函数用于计算指定列的最大值。如果列中有 NULL 值,则 NULL 会被忽略。
-- 计算指定列的最大值
SELECT MAX(column_name) FROM table_name;
MIN 函数用于计算指定列的最小值。如果列中有 NULL 值,则 NULL 会被忽略。
-- 计算指定列的最小值
SELECT MIN(column_name) FROM table_name;
GROUP BY 表示按照指定的列进行分组,并对每个分组进行统计。
-- 按照指定列进行分组,并对每个分组的指定列计算平均值
SELECT column_name, AVG(column_name) FROM table_name GROUP BY column_name;
上面这个 SQL 语句会将 table_name 表中的数据按照 column_name 列进行分组,然后计算每个分组的 column_name 列的平均值。
HAVING 子句用于筛选 GROUP BY 分组的结果。只有符合 HAVING 条件的分组才会被返回。
-- 按照指定列进行分组,筛选出指定列平均值小于等于 100 的分组
SELECT column_name, AVG(column_name) FROM table_name GROUP BY column_name HAVING AVG(column_name) <= 100;
上面这个 SQL 语句会将 table_name 表中的数据按照 column_name 列进行分组,然后筛选出 column_name 列的平均值小于等于 100 的分组。
以上就是常见的获取统计值的 SQL 语句,希望对大家有所帮助。