在SSRS報表項目,每個月的罪名,我需要在機構的檢查的結果趨勢在過去12個月(滾動)的數據。 不像一個標準的BI報表應用程序,其中分組可以在一個固定的字段來完成,例如「InspectionDate」,每次檢查的結果是「起始日期」和「結束日期」之間有效。當執行新的檢查時,該機構的上一條記錄會得到一個結束日期,並會創建一條新記錄,其中新的開始日期和結束日期爲null。我需要彙總每個月的狀態彙總數據。報告的日期只給出起始日期日期和結束日期,而不是EVENTDATE
所以目前,我正在製作此數據的方法如下: -
1)複製實時數據報告服務器,並添加12個新領域P0至P11來標誌該月的記錄是在過去12個月內有效。以下表格
2)運行12更新查詢...
UPDATE tblDistributionReports
SET P1 = 1
WHERE DATEDIFF(MONTH,GETDATE(),StartDate) <= -1
AND (ENDDATE IS NULL OR DATEDIFF(MONTH,GETDATE(),EndDate) >= -1)
Etc .....
3)UNPIVOT表給我一個行每個月檢查是有效的
4)重新 - PIVOT結果給我彙總數和分數的平均每月
所以 - 這工作雖然是有點麻煩。 有沒有更優雅和有效的方式做到這一點,我還沒有?
非常感謝
上面的檢查和CTE readiing起來後,例如完美的作品,看起來比我自己嘗試更加專業。謝謝 –