Blackhole
31.12.2014, 12:16:02
Witam.
Mam w tabeli przedziały czasu od-do (godziny i minuty). Potrzebuję z takiej tabeli uzyskać zakresy 5-minutowe zawierające się w tych przedziałach czasowych. Nie mam pomysłu, jak to zrobić.
Przykład, co chcę uzyskać:
Tabela z przedziałami zawiera:
przedzial_od przedzial_do
10:00 10:15
10:40 11:05
Chciałbym z niej uzyskać:
jednostka
10:00
10:05
10:10
10:40
10:45
10:50
10:55
11:00
Proszę o pomoc.
trueblue
31.12.2014, 12:28:17
Utwórz tabelę "godzina" z kolumną gdzie będą wszystkie godziny od 00:00:00 do 23:55:00 z przedziałem co 5 minut.
SELECT g.godzina FROM godzina AS g,czas AS c WHERE g.godzina>=c.przedzial_od AND g.godzina<c.przedzial_do
Blackhole
31.12.2014, 12:59:24
Pewnie dynamicznie się nie da jak (w Oracle)?
trueblue
31.12.2014, 13:12:16
Możesz stworzyć jeden UNION od 0 do 23, drugi od 0 do 55, połączyć je CROSS JOIN i wykorzystać powyższe zapytanie.