MySQL中的Sum函数用法详解mysql中sum使用

说白了,sum函数就是MySQL中的加法器,但是正确使用的话可以省去很多麻烦。

关于扩展有两个要点: 首先,让我们使用最简单的场景:去年我们运行电子商务后端来统计每日销售额。
只需使用 SELECT SUM(sales_amount) FROMorders WHERE date = '2 02 3 -1 0-2 7 ' 即可在几秒钟内获得结果。
但有一个陷阱。
如果你的表包含数万条订单,直接执行这条SQL会冻结查询。
最好的方法是向日期列添加索引。
还有一点是,Sum 函数与 GROUP BY 一起使用非常容易。
比如我们按城市分组计算每个地区的总销售额,SELECT SUM(amount), city FROMorders GROUP BY city。
去年我跑了这个查询,大概有3 000条数据,5 分钟就得到了结果。
然而,我注意到有些不对劲。
结果发现该城市没有被索引,并且更改需要几秒钟才能完成。
还有另一个关键细节。
默认情况下,Sum 忽略 NULL 值。
因此,如果您计算工时,并且某个员工没有输入特定项目的工时,您可以直接使用 SUM (work_hours) 将其他人的总工时相加。

一开始我以为Sum只能统计数字列,后来发现错了。
只要该列可以隐式转换为数字,就可以使用例如 CAST 进行计算。
但说实话,这是相当困难的。
如果该列包含非数字文本,例如例如。
“1 00abc”,直接使用“Sum”会报错。

建议尝试Sum和CASE WHEN来尝试一些技巧,例如:B.按级别计算工资总额。

EXCEL中如何统计同一个身份证号对应的多条工资额的求和问题?

嘿嘿,你说的我都听到了,我帮你想想。
去年,我在上海帮助一位同事做了类似的事情。
数据量并不大,只有几百条。
当时导入Access确实很方便,而且他们用SQL语句运行查询速度非常快。

但是如果你使用Excel,我承认我没有找到任何快捷方式。
不过当时有个窍门,你试试吧。
在“排序和过滤”中,点击“过滤”,然后慢慢地一一添加条件。
虽然很慢,但是很有效。
我记得当时的数据,加上几层过滤条件后,慢慢发现了问题。
大约花了两个小时,这比等待要好。

你先试试这个怎么样? 如果不行的话我就再想想别的办法。