Jeg kan ikke få noget til at stemme, og har meget svært ved at se hvorledes jeg skal sammenligne dataene med intervallerne og lave beregningerne. Det er nemt at tjekke dataene for antal timer, men hvordan jeg så derfra sammenligner med intervallerne er mig åbenbart uvist.
Bliver ret klundet fordi MS SQL ikke har greatest/least som Oracle - men her er et bud: (Er skrevet som om Start og Slut er omregnet til deci-timer).
select Dato ,case when Start < 6 and Slut < 6 then Slut-Start when Start < 6 then 6-Start end "0-6" ,case when Slut >= 6 and Start < 17 then case when Slut < 17 and Start >= 6 then Slut-Start when Slut < 17 and Start < 6 then Slut-6 when Slut >= 17 and Start >= 6 then 17-Start else 17-6 end end "6-17" ,case when Slut >= 17 and Start < 23 then case when Slut < 23 and Start >= 17 then Slut-Start when Slut < 23 and Start < 17 then Slut-17 when Slut >= 23 and Start >= 17 then 23-Start else 23-17 end end "17-23" ,case when Slut >= 23 and Start >= 23 then Slut-Start when Slut >= 23 then 1 else 0 end "23-24" from Tabel
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.