2016-07-11 146 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

相關問題