tijden die binnen een range vallen, ranges in aparte tabel

Status
Niet open voor verdere reacties.

Amorax

Gebruiker
Lid geworden
23 mei 2009
Berichten
13
Ik heb twee tabellen. Tabel 1, genaamd Meetwaarden, bevat meetwaardes per datum per uur. Dus een tabel met 3 kolommen: Datum, Tijd en Waarde.

Tabel 2, genaamd Tijdvakken, ziet er als volgt uit.


TijdvakTijdVanTijdTot
7-9 uur7:009:00
9-16 uur9:0016:00
16-20 uur16:0020:00
20-23 uur20:0023:00

Ik wil de som van de meetwaarden per tijdvak weten. Daarom heb ik een query gemaakt met de 2 tabellen zonder join want er valt nergens op te joinen.

[sql]SELECT m.Datum, t.Tijdvak, SUM(m.Waarde)
FROM Meetwaarden m
CROSS JOIN
Tijdvakken t
WHERE m.Tijd BETWEEN t.TijdVan AND t.TijdTot
GROUP BY m.Datum,t.Tijdvak[/sql]


Dit geeft prima resultaten. Het probleem is alleen dat het met zeer veel meetwaarden een enorm trage query geworden is.
Dat komt natuurlijk door de Cross Join. Is er een handiger manier om een dergelijke query op te zetten?
 
Laatst bewerkt door een moderator:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan