Я работаю над чем-то похож на этот пост здесь: TS SQL - group by minuteSQL Group по мельчайшая Expanded
Однако шахта вытягивать из очереди сообщений, и мне нужно, чтобы увидеть точный подсчет количества трафика, который сообщений Очередь создания/отправки, и в какое время
Select * From MessageQueue mq
Моя расширенная версия этого, хотя выглядит следующим образом: A) Пользователь определяет время начала и время окончания (достаточно просто с помощью @StartTime DECLARE в и @EndTime
B) Дайте пользователю возможность выбора «группировки». Будет ли он разбит на 1 минуту, 5 минут, 15 минут или 30 минут (Макс.). (Я думал сделать это с заявлением CASE, но мои проблемы с тестированием разваливаются на меня.)
C) Отобразить данные, чтобы точно отображать счет того, что произошло во время выбранного интервала (группировки).
Это где я нахожусь до сих пор
SQL Blob:
DECLARE @StartTime datetime
DECLARE @EndTime datetime
SELECT DATEPART(n, mq.cre_date)/5 as Time --Trying to just sort by 5 minute intervals
,CONVERT(VARCHAR(10),mq.Cre_Date,101)
,COUNT(*) as results
FROM dbo.MessageQueue mq
WHERE mq.cre_date BETWEEN @StartDate AND @EndDate
GROUP BY DATEPART(n, mq.cre_date)/5 --Trying to just sort by 5 minute intervals
, eq.Cre_Date
Это выход я хотел бы достичь:
[Time] [Date] [Message Count]
1300 06/26/2012 5
1305 06/26/2012 1
1310 06/26/2012 100
@KyleHale О, 'GETDATE()' t здесь была плохая копия-паста, исправлена она сейчас. – Lamak
Вы, ребята, не перестаете меня удивлять. Честно говоря, я не могу поблагодарить вас за это. Мне нужно еще несколько членов Совета, прежде чем я смогу «Проголосовать», но я отметил это как ответ. – Barnie