2014-10-09 29 views
0

我在與一個CASE聲明一個問題,當T-SQLGROUP BY顯示了同一組不止一次使用CASE

下面是該查詢:

Select 
CASE WHEN cri.ChartRetrievalMethodID IS NULL THEN wfseg.SiteEventGroupID 
ELSE cri.ChartRetrievalMethodID END as Type, 
count(distinct c.chartid) TotalCharts 
From Sites s LEFT JOIN Charts c ON s.SiteID=c.SiteID 
LEFT JOIN ChartRetrievalInformation cri ON c.ChartID=cri.ChartID 
LEFT JOIN WFSiteEvents wfse ON wfse.SiteID=s.siteid 
LEFT JOIN WFSiteEventTypes wfset ON wfset.EventTypeID=wfse.EventTypeID 
LEFT JOIN WFSiteEventGroups wfseg ON wfset.SiteEventGroupID=wfseg.SiteEventGroupID 
Where 
wfse.EventStatusID in (1,2) 
and s.ProjectID=110 
group by 
cri.ChartRetrievalMethodID, wfseg.SiteEventGroupID 

我得到一個很多多行,而不是將它們組合成一個 - 例如:

+------+--------------+ 
| Type | Total Charts | 
+------+--------------+ 
| 3 | 28   | 
| 3 | 3   | 
+------+--------------+ 

理想我想一起搗碎這兩行只是一個:

+------+--------------+ 
| Type | Total Charts | 
+------+--------------+ 
| 3 | 31   | 
+------+--------------+ 

我敢肯定沒有什麼我寫錯了,但我似乎無法看到它是什麼。

+2

您可以按整個case語句進行分組。 – Laurence 2014-10-09 21:38:58

回答