首先,我將聲稱在SQL中沒有極端的專業知識。TSQL 2中的查詢1
我想要做的是根據幾個不同的標準從SQL Server數據庫中提取一些事件計數,並將它們放入SSRS中顯示每月計數的折線圖上。我最初創建的兩個查詢都會提取正確的數據,但SSRS不允許在一個圖表上使用多個數據集。這是我掛斷的地方。我確信我可以做一些子查詢來將兩個數據集合成一個只是將計數分隔成列,但是我迄今爲止所嘗試的總計了整個計數。
我需要的數據是報告日期,它是日期/時間值和發生的事件計數(無需彙總計數,或不應該,因爲SSRS將允許我按月對它們進行分組,這是報告應該看起來的樣子)匹配2個標準中的每一個。
下面是兩個查詢,我現在用:
SELECT DISTINCT v_Incident.ReportedDate, COUNT(*) AS Count
FROM v_Incident INNER JOIN
v_IncidentMaxWorkLog_Category ON v_Incident.IncidentID = v_IncidentMaxWorkLog_Category.Incident_Number
WHERE (v_Incident.Summary LIKE N'Intelligent Incident for Impacted CI%') AND (v_Incident.CustomerFirstName = N'BMC') AND
(v_Incident.CustomerLastName = N'Impact Manager') AND (v_IncidentMaxWorkLog_Category.WORK_LOG_TYPE IN ('General Information', 'Incident Task/Action',
'Working Log')) AND (v_Incident.ReportedDate >= '7/1/2014') AND (v_Incident.ReportedDate >= DATEADD(year, - 1, GETDATE()))
GROUP BY v_Incident.ReportedDate
FROM v_Incident
第二個查詢
SELECT DISTINCT v_Incident.ReportedDate, COUNT(*) AS Count
FROM v_Incident INNER JOIN
v_IncidentMaxWorkLog_Category ON v_Incident.IncidentID = v_IncidentMaxWorkLog_Category.Incident_Number
WHERE (v_Incident.Summary LIKE N'Intelligent Incident for Impacted CI%') AND (v_Incident.CustomerFirstName = N'BMC') AND
(v_Incident.CustomerLastName = N'Impact Manager') AND (v_Incident.ReportedDate >= '7/1/2014') AND (v_Incident.ReportedDate >= DATEADD(year, - 1, GETDATE()))
GROUP BY v_Incident.ReportedDate
FROM v_Incident
正如你所看到的,我拉下reporteddate和計數。如果我只將這兩個語句放在一個語句中[select(query1)as filtered](query2)as base]並將group by移到外面,我會得到結果,但它是每個值上的每個值的總和單線,約10K線太多。
是否有一個簡單的解決方案,可以讓我獲得每個日期,以及單個基數和使用這兩個或類似查詢進行過濾?非常感謝您提前!
那麼你想結果拆分的查詢結果或結合?如在查詢1返回'1/1/2014,10'和查詢2返回'1/1/2014,20'你想'1/1/2014,30'還是你希望它顯示重複項? – Elias 2014-09-12 15:34:43
它應該是分開的,所以如果查詢1返回1/1/2014,10和查詢2返回1/1/2014,20它應該輸出1/1/2014 BASE:10 FILTERED:20 – billhubb84 2014-09-12 15:37:03