在 SQL 中,有两个内置函数可以对表中的数据求和或求平均值。
在本文中,我将通过代码示例向你展示如何在 SQL 中使用 SUM
和 AVG
函数。
如何在 SQL 中使用 SUM 函数
如果需要在表中添加一组数字,可以使用 SQL 中的 SUM
函数。
这是基本语法:
SELECT SUM(column_name) FROM table_name;
SQL 中的 SELECT
语句告诉计算机从表中获取数据。
SQL 中的 FROM
子句指定我们要列出的表。
在此示例中,我们有一个名为 students
的表,其中包含 id
、name
、date
和 total
列。我们想把所有学生售出的糖果总数加起来。
我们可以使用此语法来获取销售的糖果总数:
SELECT SUM(total) FROM students;
结果将是 41。
我们还可以使用 GROUP BY
子句获取每个学生的糖果数。
第一部分是为销售的糖果总数选择名称和总和,如下所示:
SELECT name, SUM(total)
第二部分是按名称对总和进行分组:
FROM students GROUP BY name;
这是按学生姓名对销售的糖果总数进行分组的完整代码。
SELECT name, SUM(total) FROM students GROUP BY name;
这就是我们表格中的结果:
现在,结果按学生姓名的字母顺序分组。
我们可以修改代码,使用 ORDER BY
子句将结果列表从最大总数到最小排序。
SELECT name, SUM(total) FROM students GROUP BY name ORDER BY total DESC;
DESC
关键字告诉计算机按总数从最大到最小排序。
如果我们想从最小到最大排序总数,那么我们将省略 DESC
关键字。
SELECT name, SUM(total) FROM students GROUP BY name ORDER BY total;
如何在 SQL 中使用 AVG 函数
AVG
函数查找 SQL 表中一组记录的算术平均值。平均值或算术平均值是一组数字的总和除以该组的计数。
例如,2+4+4+6+6+8 是 30 除以 6,结果平均值为 5。
这是 AVG
函数的基本语法:
SELECT AVG(column_name) FROM table_name;
在此示例中,我们有一个名为 students
的表,其中包含 id
、name
、date
和 scores
的列。我们想在表格中找到所有学生考试成绩的平均值。
我们必须使用此语法来获得测试分数的平均值:
SELECT AVG(scores) FROM students;
平均值是 85.333。
我们还可以使用 ROUND
函数将结果四舍五入到最接近的整数。
SELECT ROUND(AVG(scores)) FROM students;
我们还可以使用 GROUP BY
子句获得每个学生的平均值。
第一部分是选择分数的名称和平均值,如下所示:
SELECT name, ROUND(AVG(scores))
第二部分是按名称对平均分数进行分组:
FROM students GROUP BY name;
代码如下所示:
SELECT name, ROUND(AVG(scores)) FROM students GROUP BY name;
表格中结果如下所示:
总结
有时你可能需要计算表中记录的总和或平均值。
如果需要在表中添加一组数字,可以使用 SQL 中的 SUM
函数。
这是基本语法:
SELECT SUM(column_name) FROM table_name;
如果需要将数据分组,则可以使用 GROUP BY
子句。
AVG
函数计算 SQL 表中一组记录的算术平均值。平均值或算术平均值是一组数字的总和除以该组的计数。
这是基本语法。
SELECT AVG(column_name) FROM table_name;
我希望你喜欢这篇教程,并祝你在 SQL 之旅中好运。
原文:SQL Count – How to Select, Sum, and Average Rows in SQL,作者:Jessica Wilkins