我正在尝试执行一个复杂的操作,在该操作中,我提取一整列数据的总和,并从每一行的总和中减去运行小计。我可以单独完成 Sum 和 Running Subtotal 的组成部分。用它来运行小计:
sum(UsageMetric) over(order by Nested1.IDNumber) as RunningTotal
但是,尝试合并它们时出现此错误:
子查询返回超过 1 个值。当子查询跟随 =、!=、<、<=、>、>= 或子查询用作表达式时,这是不允许的。
所以我安装了这个,它返回给定行的“独立”运行小计:
declare @TargetNumber BIGINT
Set @TargetNumber=(select Nested1.IDNumber from TargetTable Nested1 where Nested1.IdNumber='1234567890' and (Extraneous Criteria Here))
select sum(Usage.UsageMetric)
from Table_Usage Usage, IDTable IDT
where IDT.IDNumber <= @TargetNumber
and (Extraneous Criteria Here)
但我真正想做的是能够删除限定符“Nested1.IDNumber='1234567890' 并为 TargetTable 中的每个 IDNumber 执行此操作。