29. august 2007 - 22:02Der er
8 kommentarer og 1 løsning
Tidsberegning ud fra 2x DATETIME
Hej,
Jeg har gang i en masse sager for tiden og ligeså meget for at prøve grænser. Og nu har jeg fundet en. Jeg er ikke lige 110% på hvordan jeg skal gribe den an.
Jeg har 2x DATETIME (start og slut hedder felterne). Lad os antage følgende:
start = 2007-08-29 21:30:00 slut = 2007-08-30 21:30:00
Her ser vi at slutdatoen i dette tilfælde er 24 timer frem i tiden. Mit spørgsmål er så - hvordan ville I sammensætte en query som finder og returnerer den tid der er forløbet i tidsrummet fra start til slut?
Og som noget andet - vil det blive returneret i sekunder eller minutter eller?
Tak :) Det var det der skulle til. Hvis jeg må have lov at stille et tillægsspørgsmål. Jeg har nemlig et ønske om noget beregning, så at sige.
START (DATETIME) SLUT (DATETIME) FORBRUGT_TID (TIME)
START er angivet til at starte med. Jeg har så valgt at have en "Luk". Når man trykker på "Luk" vil SLUT blive udfyldt og NEDETID bliver f.eks. udfyldt med hjælp fra følgende query:
SELECT TIMEDIFF(start, slut) FROM minTabel WHERE id = 1
NEDETID bliver eksempelvis "-02:24:15" hvis der er forløbet ~2,5 time. (Hvorfor negativtegn? Kan det fjernes via SQL eller skal det efterbehandles i PHP?).
Nu har jeg så naturligvis flere rækker som hver især får en NEDETID. Spørgsmålet er så - hvordan lægger jeg dem sammen? SUM var et forsøg værd, men det er vist mindre effektivt. Her ses resultat med SUM:
NEDETID række 1 = -02:24:15 NEDETID række 2 = -21:02:56 SUM resultat: 33321761
Haha ja tænk sig at fortegnet var så simpelt at fjerne :) Tør jeg spørge om du har et forslag til hvordan man bedst kan regne summen ud på rækkerne FORBRUGT_TID?
FORBRUGT_TID er af typen TIME og (nu) med data som:
01:06:31 02:26:43 osv
Nu kan man få et mere fornuftigt resultat med SUM, men jeg ville dog gerne have det i "tt:mm:ss" istedet for bare en streng "ttmmss". Er det muligt, eller skal jeg hellere satse på at gøre det mere læsbart med PHP?
liit42, vil du være sød at smide et svar? Jeg ville have delt dem ligeligt mellem jer, men jeg ved at erik ikke samler på point. Skulle han have skiftet mening må han dog endelig også smide et svar :o)
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.