我是SQL Server 2012的新手,希望尽量减少Excel中的数据处理。在我的Excel中复制SUMIF的SQL函数
我有我的主要数据集,然后我想要从这些数据做SUMIF,并只返回sumif不等于零的行。
我使用下面的函数,它在不同的时间返回不同的结果。
可能的错误原因是有一些行的AccID为空。
, main_data2 as
(
select
md.*
from main_data md
left join
(
select
AccID
,sum(amount) as total_amount
from main_data
group by AccID
having sum(amount) <> 0
) md2 on md.AccID = md2.AccID
where md2.AccID is null
)
我需要在最终结果中包含AccID为空的那些行。 – Isu
现在你正在改变你的要求。你想只记录其账户有非零金额的记录,还是你想要所有记录?如果是后者,那么子查询有什么意义? –