2013-09-30 87 views
0

我有一个运行良好麻烦与Select语句

SELECT 
    division, 
    division_name, 
    object_account, 
    account_description, 
    Sum(value) AS PreferedSpend 
FROM jde_dw.blanket_rpt 
WHERE division = 02 
AND vendor_type = 'PV' 
AND month = 07 
AND year = 2013 
GROUP BY division, division_name, object_account, account_description 
ORDER BY division 

现在我想增加一列,显示总花费将是相同的查询如上,但没有在其中的vendor_type条件下选择查询声明。

所以最终的查询将显示事业部,division_name,Object_account,ACCOUNT_DESCRIPTION,值(首选)和价值(总包括一切)

我怎样才能做到这一点?

+3

我不知道你问这里 –

+0

我认为你正在寻找[级联(HTTP:/ /technet.microsoft.com/en-us/library/ms177561.aspx) – 2013-09-30 15:07:47

+1

这需要更多描述:“包含所有内容的总数”。也许你可以向我们展示一些示例数据和结果? –

回答

1

移动状态里面SUM()这样只有匹配的行贡献的总和:

SELECT 
    division, 
    division_name, 
    object_account, 
    account_description, 
    SUM(CASE WHEN vendor_type = 'PV' THEN value ELSE 0 END) as PreferedSpend, 
    SUM(value) AS TotalSpend 
FROM jde_dw.blanket_rpt 
WHERE division = 02 
AND month = 07 
AND year = 2013 
GROUP BY division, division_name, object_account, account_description 
ORDER BY division