2016-07-11 78 views
0

我在表中只有两条记录。一个是Fields!Type.Value="**Buy**"Fields!Type.Value=59。另一个是Fields!Type.Value="**Sell**"Fields!Type.Value=59。在这里,我想做条件总结(如果它是“销售”,从总和中减去),所以我期望的结果是0.我用下面的公式,但它总结了两行,我得到了118。 ?SQL Server Reporting Service中的条件总结

=sum(iif(Fields!Type.Value="Sell",-1*Fields!Shares.Value,Fields!Shares.Value)) 
+0

你能显示一些你的问题的示例数据? – BobNoobGuy

回答

1

修订答案

我首选的办法是修改SQL一边的数据源,所以我们可以有正确的每一行设置的标志一个新的领域。

在SELECT语句添加为新列:

CASE WHEN Type = 'Sell' THEN - 1 * share ELSE share END as ValueToSumInReport 

注意,您将需要修改使用您的实际字段名。添加该字段到您的报告为

=SUM(Fields!ValueToSumInReport.Value) 
+0

实际上Type只有两个值,一个是“Sell”,另一个是“Buy”。没有两颗星。在输入问题时,我粗体地做了这个,这就是为什么你看到“**卖**”的原因。 – Cathy

+0

@Cathy,我的案例陈述修改后的答案对你有帮助吗? – Mike

相关问题