sql-server - 特定行的总和
问题描述
我有一些这样的查询
SELECT TotalAmount/(select DateDiff(dd,StartDate, DateAdd(dd, 1,EndDate)))
AS TotalAmountForMonth
FROM Campaign
WHERE StartDate >= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0)
AND StartDate < DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 1)
此查询搜索本月的活动,并从 TotalAmount 获取每日付款作为行。但我需要他们的总和(总)数。
问题是,我怎样才能得到这个查询的总和?
Edit1:表格示例
Total Amount StartDate EndDate
1980 2018-05-01 00:00:00.0000000 2018-05-31 00:00:00.0000000
1271 2018-05-01 00:00:00.0000000 2018-06-01 00:00:00.0000000
2015 2018-05-01 00:00:00.0000000 2018-06-01 00:00:00.0000000
238 2018-05-01 00:00:00.0000000 2018-05-08 00:00:00.0000000
0 2018-05-01 00:00:00.0000000 2018-06-01 00:00:00.0000000
而他们的结果
63,8709677419355
39,71875
62,96875
29,75
0
解决方案
这将需要SUM聚合函数。
Select SUM(TotalAmountForMonth) from (
SELECT TotalAmount/(select DateDiff(dd,StartDate, DateAdd(dd, 1,EndDate)))
AS TotalAmountForMonth
FROM Campaign
WHERE StartDate >= DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0)
AND StartDate < DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 1)
)
推荐阅读
- python - 如何交叉 listA.txt 和 listB.txt 的行并返回一个 output.txt,其中 listB.txt 的每一行在 Python 和 grep 中匹配?
- openstreetmap - 与 olms 一起使用时,OpenLayers t.getScaleArray 不是函数
- primefaces - RemoteCommand,不在primefaces中发送参数
- sql - 如何优化 1000 条 sql 查询以进行更新?
- java - 我的 Spring-Boot 自定义登录表单不工作 [更新]
- excel - Excel VBA 数组公式使用索引匹配给出错误类型不匹配
- html - 有什么方法可以确保这个线性渐变上的所有条纹都是相同的大小?
- asp.net-mvc - Razor ASP.NET Core:为什么数据库连接状态在第一次加载时显示“正在连接”,然后在重新加载时成功连接到数据库?
- javascript - 使用 x-www-form-urlencoded content-type 将嵌套对象作为表单数据发布
- stata - 在 Stata 上将 Panel 数据从宽格式转换为长格式