数据库18:SUM() 函数的使用(头歌云课)

本文介绍了如何使用SQL的SUM()函数来计算数据表中指定字段的数值总和,以及如何在函数内部进行计算。SUM()函数可以用于返回某一字段的数值之和,区别于COUNT()函数的计数功能。示例展示了如何从Customers表中检索消费金额总和,并提供了一个例子展示SUM()函数如何处理打折情况下的损失计算。此外,编程任务要求计算表Products中价格与数量乘积的总和,即总库存金额。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


(1)任务描述

本关任务:使用函数 SUM(),计算数据表中指定字段的数值之和。

(2)相关知识

为了完成本关任务,你需要掌握:1. SUM() 函数的含义,2. SUM() 函数的用法。

(3)返回某一字段的数值之和

SUM() 是用来返回某一字段(列)数值总和的函数,初学的学习者很容易把它和 COUNT() 函数搞混。

因为在某个条件下,他们返回的是相同的值。比如,在你要统计的字段的内容(行) 都为 1 时,不管你是进行计数还是加和,结果都是相同的。

 

3174a9c2b523797c50a55ff2786eb942.png

 

但是只要记住,COUNT() 函数只能用来计数就可以了,就像数鸭子一样。

下面,我们来看看如何使用 SUM() 函数。

语法规则为:

SELECT SUM(字段名)
FROM 表名

举个例子 我们想从表 Customers 中,检索所有消费者消费金额的总和。 表 Customers 的内容如下图所示:

f37a4122a6f7015a493963d20d5b15c3.png

输入:

SELECT SUM(cost) as total
FROM Customers

输出:

741b183a61af44068fe9882ab930f0d9.png

在这个例子中,SUM(cost) 函数为我们返回了 cost 字段中所有内容的加和,非常方便。

(4)返回某一字段经过计算后的数值之和

你以为 SUM() 函数只能这么用吗?它还有更棒的地方,我们还可以在函数内做你喜欢的计算,说起来,它就是数学中的∑符号。

举个例子 如果商场决定为每一位顾客打八折,那商场在原基础上将会损失多少营业额呢? 表 Customers 的内容与上例相同。

输入:

SELECT SUM(cost - cost * 0.8) as total
FROM Customers

输出:

063cbaec91b2eadc37ccf9a525bf0e47.png

在这个例子中,SUM(cost - cost * 0.8) 函数为我们累加了商场为每一位顾客优惠的价格,也就是商场的的“损失”咯。

Tips: 如果碰见了空值 NULL ,SUM() 函数会自动忽略它。

现在轮到你们来练练手了。

(5)编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。 你只需:

  • 补全右侧代码片段中 Begin-End 区间的代码,这次我们在表 Products 中增加了 quantity(数量)字段,请返回所有商品的价格与数量乘积的总和(即总库存的金额),并命名它为 amount。

其中表 Products 的内容如下表所示:

91b19adb82d797d61def7580b5174b3d.png

测试说明

  • 本关涉及到的测试文件是 step4_test.sh ,平台将运行用户补全的 step4.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

 

d78bc34cbf2bdce646747aeb6ec7ba0e.png

开始你的任务吧,祝你成功!

 

实验代码

f08ffa89eb50496ba66c78f8156ab2be.png

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值