SQL SUM今天的企业需要从大型数据表中获取信息和知识。趋势分析,预测和智能业务报告仪表板有需求。战略和战术规划者需要信息,数据库充满了它。那么你如何将该数据转化为知识?您可以查看SQL中的分析函数,总和函数是一个SQL函数,可帮助您添加值。

在Udemy.com上开始使用SQL查询和编程语言

SUM是组成聚合函数组的SQL函数之一。我们通常在SQL中使用的许多函数只对单行进行操作。聚合(也称为组函数)对多行进行操作,允许对数据值进行操作,并以不同的方式显示数据值,以不同的方式存储在数据库中。例如,如果程序员使用提供算术操作(如SUM、COUNT和AVG)的函数,然后将它们应用于多行数据,那么结果将是一个计算过但实际上没有存储在数据库中的值。

这是一个重要的概念,因为这意味着数据不仅仅存储在数据库中,然后检索。相反,组函数可以将数学操作应用于行和批次的数据值以及先前未知的信息。这的价值是,程序员可以通过应用SQL内置的算术函数来生成现有数据的进一步信息和知识。

由于聚合函数处理来自行或行组的数据,使用GROUP BY和多组函数(如SUM)可以提供汇总总数或单个组总数。这听起来可能并不惊天动地,但这是提供商业分析的第一步。例如,数据库可以为业务提供这样的答案:总工资或每个部门的总工资是多少?

了解商业分析和报告在Udemy.com

通过使用基本的多组函数(如SUM和COUNT),您可以得到上述业务问题的答案。其他单组函数提供了最小值和最大值,方差,以及由此产生的标准差,这将为真实的商业智能和分析提供基础。企业需要的不仅仅是静态信息。它需要分析,那么数据库如何为更复杂的问题提供实时答案呢?销售总量是多少,销售排名是多少,每个渠道的销售与上周,上个月,前月,去年这个时候的偏差是多少?

这些都是企业需要实时回答的问题。要对这些类型的复杂问题建模,然后将它们实现到标准的SQL查询中,编写起来是很困难的。值得庆幸的是,已经有了执行这些专家分析功能的SQL扩展。

作为分析功能

SUM函数对其标准语法进行了分析扩展;

语法:SUM(表达式或列)
过度(分区,订购,窗口)

从示例中的语法可以看出,扩展OVER被添加到SUM计算中。添加它是为了表明,在这种情况下,SUM作为一个分析函数工作,而ORDER BY表示将在此分析和函数上执行的数据范围(窗口或行)。

例如,在下面的代码中,SUM将被用作pre_order列中的数据的分析扩展,并按customer_name进行排序

选择customer_name、pre_order
sum(pre_order)
OVER (ORDER BY customer_name) running_total
来自Sales_orders.
Customer_Name订购;

上面的SQL查询使用SUM分析函数为每个客户逐行执行pre_order值的累积计数。

customer_name pre_orders. runing_total.
行为 20000 20000
arg 40000 60000
靶心 70000 130000
公式4 1000 131000
电视媒体 20000 151000
X-sell 40000 191000
yct. 20000 211000

结果显示所有客户预订和所有客户累计运行订单的列表。

但是,如果业务需求是通过每个客户的所有客户和累积预订价值的所有预订,那么组或分区子句都必须分离每个组并将总和分析函数限制为每组数据(部门)。

select company_name, department_id, pre_orders,SUM (pre_orders)OVER (PARTITION BY department_id ORDER BY pre_orders) department_totalfrom Sales_Orders

ORDERY by Department_ID,Pre-Orders,Company_name;

在此SQL查询示例中,函数名为sum,它应用于列预订,这是基本的语法。OVER将函数SUM标识为解析函数,该函数将执行超过来自的数据(PARTITION BY department_id ORDER BY pre_sales)

顾客姓名 部门 预订 部门_Total.
行为 107. 20000 20000
arg 107. 40000 60000
靶心 107. 70000 130000
公式4 108. 1000 1000
电视媒体 108. 20000 21000
X-sell 109. 40000 40000
yct. 109. 20000 60000

设置范围

分析功能可能或可能没有窗口子句。窗口基本上是分区内的行中的一组的范围,该分区将由分析函数评估。在第一个示例中,默认情况下使用窗口,因为它使用Order By子句。Order by子句有效地添加了一个默认的Windows子句,它指出当前分区中的当前和先前行是在计算中使用的行。当未说明分区时,那么整个一组行将是默认分区。

在示例一中,没有对PARTITION编码,所以整个列都由累积SUM函数使用。然而,在示例2中,有一个分区,它对每个部门进行分组,但是没有设置窗口参数。可以使用前面的ROWS或RANGE子句设置窗口参数。

SQL Analytic功能是从数据库中包含的数据中获取答案的强大方法。分析是详细报告所需的功能,以及操作和战术规划和分析的信息来源。如果你正在成为成为一个人的旅程SQL专家或业务分析师然后学习利用分析功能是该战术视觉的重要组成部分。

商业分析中的顶级课程

利用UML对困难问题进行高级面向对象分析
每Emanuelsson
4.6 (775)
收视率最高
商业智能分析师课程2021
365年职业生涯
4.5 (29,485)
畅销书
业务分析基础知识
The BA Guide | Jeremy Aschenbrenner
4.5 (27283)
业务分析建模技巧与技术
The BA Guide | Jeremy Aschenbrenner
4.4 (5449)
商业分析基础
并于塞
4.5 (7,896)
业务分析师:项目管理技术和工具
The BA Guide | Jeremy Aschenbrenner
4.5 (2,633)
通过业务分析确定和定义问题
The BA Guide | Jeremy Aschenbrenner
4.4 (3,909)
使用业务分析进行战略分析
The BA Guide | Jeremy Aschenbrenner
4.6 (1,594)
敏捷业务分析
并于塞
4.4 (7347)
作为业务分析人员计划项目
The BA Guide | Jeremy Aschenbrenner
4.6 (1193)
CBAP认证课程。完整的课程。
Obalim Esedebe.
4.4 (457)
畅销书
业务分析:功能非功能性要求
汤姆和安吉拉哈瑟韦
4.2 (366)

更多商业分析课程

商业分析专业的学生也在学习

赋予你的团队。引领行业。

使用Udemy for Business订阅在线课程库和数字学习工具。

请求演示