0
我有以下的情況:我有一個像在一份報告中16次的查詢,而這一切在開始使用幾乎相同的SELECT
聲明:查詢速度慢,可能的優化
SELECT
sereresystem.registrationtime,
CONVERT(VARCHAR(11),DATEADD(DAY,DATEDIFF(DAY,0,sereresystem.registrationtime),0),120) AS [Day],
CAST(datepart(YEAR,sereresystem.registrationtime) AS CHAR(4))+'/KW '+CAST(Datepart(ISO_WEEK,sereresystem.registrationtime) AS VARCHAR(2)) AS [Week],
Datepart(m,DATEADD(MONTH,DATEDIFF(MONTH,0,sereresystem.registrationtime),0)) AS [Month],
CAST(datepart(YEAR,sereresystem.registrationtime) AS CHAR(4))+'/'+CAST(Datepart(q,DATEADD(MONTH,DATEDIFF(MONTH,0,sereresystem.registrationtime),0)) AS VARCHAR(1)) AS [Quarter],
Datepart(year,DATEADD(MONTH,DATEDIFF(MONTH,0,sereresystem.registrationtime),0)) AS [Year],
COUNT(sereresystem.caseid) AS [Total]
FROM sereresystem
INNER JOIN sereregeneral ON sereresystem.caseid=sereregeneral.caseid
INNER JOIN sereresperou ON sereresystem.caseid=sereresperou.caseid
WHERE sereregeneral.inpcha IN(@Inputchannel)
AND sereresperou.assrol IN(@Assigned_Role)
AND sereresystem.registrationtime BETWEEN @Starttime AND @Endtime
AND sereresystem.referencenumber=sereregeneral.renure
GROUP BY sereresystem.registrationtime
我需要一天的值,一週,月份,季度和年份在SSRS中的這些值之後動態分組。 我現在的問題是報告速度很慢。是否有可能縮短這5個日期選擇語句的處理時間?
CNC中現在完整的查詢
問題將是'FROM'而不是'SELECT' – 2013-03-11 12:56:15
這個查詢返回多少行?最終報告中有多少結果?你彙總結果嗎? - 簡而言之,你可以發佈整個查詢嗎?你展示的部分不太可能導致你的問題。 – 2013-03-11 12:57:46
查詢返回取決於選擇的日期(開始時間和結束時間)和取決於選擇的格式8day,周等)所以這是一種可能性約365行每年(選擇日)或1行(選擇年份) – 2013-03-11 13:20:22