Interval og SQL Query

Tags:    databaser

Er der nogen der kan hjælpe med en SQL Query til SQL Server 2005, der trækker data ud af en tabel og præsenterer summen af records i 5 minutters intervaller inden for f.eks. 1 time?

Tabellen indeholder disse kolonner:

Dato, Tidspunkt



Så vidt jeg ved kan man ikke lave noget der kører med et bestemt interval, ikke i sql server. Jeg tror der skal et program til at vente i de 5 minutter får den sender et stykke sql...



Jeg har lavet en query der trækker data ud pr. time, den ser sådan her ud. Jeg tænkte bare om der var en smartere måde at gøre det på - Hvis jeg benytter samme måde bliver det jo en lidt voldsom query, hvis den skal trække data ud pr. 5 minutter.
SELECT Convert(Varchar(2), Tidspunkt) + ':00 - ' + Convert(Varchar(2), Tidspunkt) + ':59' AS Tidsrum, Count(*) AS [Antal] FROM Statistik_Hvd WHERE Dato >= '2008-09-19' AND Dato <= '2008-09-19' GROUP BY Convert(Varchar(2), Tidspunkt) + ':00 - ' + Convert(Varchar(2), Tidspunkt) + ':59' ORDER BY Convert(Varchar(2), Tidspunkt) + ':00 - ' + Convert(Varchar(2), Tidspunkt) + ':59'





Indlæg senest redigeret d. 24.09.2008 15:10 af Bruger #12055
Her er løsningen, til dem der skulle være interesseret :)
SELECT modulusTime, modulusMinut, count(Modulus)
FROM [SELECT
int( ((hour(opkaldstidspunkt) * 60 + minute(opkaldstidspunkt)) * 60 + second(opkaldstidspunkt)) / (5 * 60)) * (5 * 60) AS Modulus,
int(Modulus / 3600) AS modulusTime,
int((Modulus - modulusTime * 3600) / 60) AS modulusMinut
FROM statistik_hvd
]. AS [%$##@_Alias]
GROUP BY modulusTime, modulusMinut, Modulus
ORDER BY Modulus;




t