2
下面的查詢工作很好,除了一件事情。 我在最終用戶報告中將該列用作「WorkStream」作爲過濾器。由於它是一個過濾器,我需要它在那裏,無論查詢是否返回任何東西。
當然,我必須使用where子句作爲查詢內的過濾器,以便只返回某些任務。 問題是,當我有一個沒有任何task_Significance項目的工作流時,工作流將被刪除,而報表過濾器(Workstream)不起作用。零返回值,所以過濾器仍然是
我需要的是一張看起來像這樣的表格,但如果我有一個缺失的工作流程,那麼它會將「0」全部覆蓋。但是,只有當工作流程缺失將它僅返回過濾器名稱(這樣的報告將有過濾器並且只顯示空表在最終報告中的過濾器下面
這是我的代碼:
SELECT
p.[Workstream]
,T.[Task_Significance]
,COUNT(1) AS Total
,SUM(case when T.[TaskPercentCompleted] >= 100 then 1 else 0 end) AS Actual
,SUM(case when T.[TaskFinishDate] <= DATEADD(DAY, 8-DATEPART(DW, GETDATE()), Convert(date,getdate())) then 1 else 0 end) AS Planned
FROM [psmado].[dbo].[MSP_EpmProject_UserView] as P
join [PSMADO].[dbo].[MSP_EpmTask_UserView] as T
On T.[projectUID] = P.[projectUID]
WHERE
[Task_Significance] IN('Application', 'Data', 'Interface', 'End User Compute', 'Network', 'Compute Package', 'Data Center', 'CREWS Sites', 'App Design Review', 'Infra Design Review')
GROUP BY p.[EnterpriseProjectTypeUID], p.[Workstream],T.[Task_Significance]
反正有沒有做到這一點?
謝謝!像往常一樣偉大! – Bob