我正在嘗試聚合 row_date、starttime 和 acdcalls,以便我可以獲得在該日期的任何給定 15 分鐘內進行的呼叫總和。
不管他們是否在 100 到 107 的拆分。
這是我到目前為止能夠到達的地方:
SQL查詢1
DECLARE @@searchdate date = '2022-2-17'
SELECT [row_date]
,[starttime]
,[split]
,[acdcalls]
FROM [CMS].[dbo].[hsplit]
WHERE split IN (100,101,102,103,104,105,106,107)
AND (acdcalls > 0)
AND (row_date = @@searchdate)
GROUP BY row_date, starttime, split, acdcalls
ORDER BY row_date, starttime asc ;
結果
| 行日期 | 開始時間 | 分裂 | 呼叫 |
|---|---|---|---|
| 2022-2-17 | 630 | 104 | 1 |
| 2022-2-17 | 645 | 105 | 1 |
| 2022-2-17 | 700 | 105 | 1 |
| 2022-2-17 | 700 | 107 | 1 |
| 2022-2-17 | 715 | 102 | 1 |
| 2022-2-17 | 715 | 104 | 2 |
| 2022-2-17 | 730 | 100 | 2 |
| 2022-2-17 | 745 | 105 | 1 |
| 2022-2-17 | 745 | 107 | 1 |
試圖讓它看起來像這樣:
| 行日期 | 開始時間 | 呼叫 |
|---|---|---|
| 2022-2-17 | 630 | 1 |
| 2022-2-17 | 645 | 1 |
| 2022-2-17 | 700 | 2 |
| 2022-2-17 | 715 | 3 |
| 2022-2-17 | 730 | 2 |
| 2022-2-17 | 745 | 2 |
非常感謝任何幫助!
uj5u.com熱心網友回復:
如果拆分無關緊要,請不要按它們分組,也絕對不要按要聚合的度量進行分組,只需選擇聚合函式即可。我真的不知道acdcalls代表什么,但如果是通過自動呼叫分配的呼叫次數,那么您可能需要SUM:
DECLARE @searchdate date = '20220217'
SELECT [row_date]
,[starttime]
,SUM([acdcalls]) AS acdcalls
FROM [CMS].[dbo].[hsplit]
WHERE split IN (100,101,102,103,104,105,106,107)
AND (acdcalls > 0)
AND (row_date = @searchdate)
GROUP BY row_date, starttime
ORDER BY row_date, starttime asc ;
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/430081.html
