试图总结不同的值SQL

时间:2013-08-13 19:58:26

标签: sql reporting-services distinct-values

我无法为SSRS中的单元格提供值,该值应该是不同值的总和。我有一个SSRS报告,看起来类似于下面的屏幕截图:

enter image description here

我无法获得红色值(11.25美元)。我基本上需要根据不同的跟踪#来总结船舶成本。所以有两个不同的跟踪#,一个是5.25美元的船舶成本,另一个是6.00美元,所以红色显示的总数应该是11.25美元。但我无法在SSRS中实现这一点,也无法在SQL查询中找到它。

我在想一个子查询(我知道下面的内容不是有效的SQL):

(SELECT SUM([Ship Cost]) WHERE [Tracking #] IS DISTINCT) AS [Ship Cost]

但我不知道如何写它。

3 个答案:

答案 0 :(得分:14)

首先获取不同的清单......

SELECT SUM(SQ.COST)
FROM
(SELECT DISTINCT [Tracking #] as TRACK,[Ship Cost] as COST FROM YourTable) SQ

答案 1 :(得分:6)

您可以执行以下操作:

SELECT SUM(distinct [Ship Cost]) . . .

但是,我不推荐这个。你可以有两个成本相同的项目,只计算一个。

更好的方法是使用Tracking #函数为每个row_number()选择一个值:

select SUM(case when seqnum = 1 then [Ship Cost] end)
from (select t.*,
             row_number() over (partition by [Order #], [Tracking #]
                                order by (select NULL)
                               ) as seqnum
      . . .
     ) t

答案 2 :(得分:0)

尝试类似

的内容

select sum(shipcost) from
(select distinct tracking#, shipcost from table)

欢呼声