1
使用SQL Server 2008R2我試圖編寫一個查詢,它將返回特定時間範圍內的所有值的總和(在本例中爲15分鐘的時間間隔)將用於識別缺失的數據(每個服務器應該返回每15分鐘12個值)。我已經到了我能找到結果的地步,但我需要一種方法將它們全部結合在同一個查詢中。代碼下面(日期將通常由變量來定義,在這種情況下,使用2013年9月1日作爲示例):SQL Server - 結合來自單個查詢的結果
Select SUM(Accounted_for) 'accounted for',date,time,server
from dbmetrics.dbo.tblmissing
where DATE='09/01/2013'
and (TIME between '00:00:00' and '23:59:59')
and SERVER='Server01'
group by DATE, TIME, server , DATEPART(hour,time),
DATEPART(MINUTE,time),DATEPART(second,time)/96
GO
結果沿着這個」 結果回來的返回線看起來像這樣
Number Date Time Server
4 2013-09-01 12:00:01.0000000 server01
6 2013-09-01 12:00:02.0000000 server01
2 2013-09-01 12:00:15.0000000 server01
10 2013-09-01 12:15:02.0000000 server01
2 2013-09-01 12:15:09.0000000 server01
我想看到什麼會
12 2013-09-01 12:00:00.0000 Server01
12 2013-09-01 12:15:00.0000 Server01
你選擇的樣本數據的差。每個數據點的分鐘恰好以15分鐘的時間間隔方便着陸,兩個時間框架巧合地加起來爲12個。你可以包括幾行像'12:03:26.0000000',並確保總和不會'比賽? –
另外,是否有任何原因的日期和時間組件分開存儲? – Kermit
如果您需要四捨五入到最接近的15分鐘時間間隔,您可能需要查看[this](http://stackoverflow.com/questions/830792/t-sql-round-to-nearest-15-分鐘間隔)。 – Kermit