Avatar billede jakka Nybegynder
23. april 2003 - 21:43 Der er 14 kommentarer og
1 løsning

Forskellen mellem to timestamps i mySql vist i minutter

Jeg har et problem, jeg har oprettet en startdato og en slutdato i en tabel som timestamp, og skal nu finde forskellen på disse i en query.
Jeg har prøvet med en masse muligheder, men kan ikke finde noget der rammer.

i access ville jeg have gjort noget lignende!

datediff("n",tur.StartTid,tur.slutTid)as køretid

er der nogen der kan hjælpe mig? Jeg er ikke alt for skrab til det her!
Avatar billede jakka Nybegynder
23. april 2003 - 22:07 #1
Er der slet ingen der kan hjælpe en slagen mand, så han kan få lov til at gå til eksamen til sommer?
Avatar billede htm Nybegynder
23. april 2003 - 22:20 #2
SELECT (slutdato-startdato) AS mellem FROM kategori WHERE id = 1
Avatar billede erikjacobsen Ekspert
23. april 2003 - 22:21 #3
Joh ... men har du kigget i manualen?
Avatar billede acoon Nybegynder
23. april 2003 - 22:23 #4
din timestamp, er det en datetime?
Avatar billede jakka Nybegynder
23. april 2003 - 22:32 #5
jeg forstår ikke det med as mellem from kategori where id = 1;
jeg har prøvet at trække de to timestamp fra hinanden, og det kan jeg også godt, problemet er jo bare at hvis jeg trækker 20020901090000 fra 20020901230000, så tager den jo ikke højde for at der er 24 timer i et døgn osv.

Jeg har ikke nogen manual, men har kigget inde på mysgls homepage, uden at finde noget.

og til det med datetime, hvis du mener det som de to ovenstående så er det, jeg valgte dem bare som timestamp da jeg oprettede tabellen!
Avatar billede erikjacobsen Ekspert
23. april 2003 - 22:34 #6
Nåh, det kunne du jo bare have sagt. Du får antal sekunder med

SELECT (unix_timestamp(slutdato)-unix_timestamp(startdato)) AS mellem FROM kategori WHERE id = 1

Prøv det phpmyadmin først (eller tilsvarende)
Avatar billede jakka Nybegynder
23. april 2003 - 22:35 #7
jeg har også prøvet følgende, som jeg fandt inde på mysql.com
FROM_DAYS(TO_Days(tur.startTid) -
  TO_DAYS(tur.slutTid)) as Vagtlængde

det vil den godt acceptere, men jeg får bare resultatet 0000.00.00, så jeg går ud fra at det er fordi den kun regner med datoer!
Avatar billede htm Nybegynder
23. april 2003 - 22:36 #8
As mellem betyder at den skal gemme resultatet som variablen mellem
from kategori betyder fra tabellen kategori
where id = 1 betyder hvor id = 1

Du for forskellen i sekunder, det er bare at udskrive denne så den er til at forstå, med eks. php eller asp.
Avatar billede jakka Nybegynder
23. april 2003 - 22:47 #9
jeg har på nuværende tidspunkt:

(UNIX_TIMESTAMP(tur.startTid) - Unix_timestamp(tur.slutTid)) as tidsforskel

jeg har en masse andet til at stå i from og where, så jeg ved ikke helt hvor jeg skal skrive det ind!
mellem mine 2 tider 20020901090000 og 20020901230000 får jeg nu følgende resultat 20217999, og hvis det skulle være i sekunder, så får jeg det til en forskel på 5616 timer, og der skulle være 16!
Avatar billede htm Nybegynder
23. april 2003 - 22:50 #10
Du skal have den første forrest :-) altså byt om på start og sludato!
Avatar billede jakka Nybegynder
23. april 2003 - 22:53 #11
så får jeg bare tallet i minus istedet!
Avatar billede jakka Nybegynder
23. april 2003 - 23:13 #12
så fik jeg det løst! Der er vist en eller anden autofunktion i timestamp der opdaterer den til dags dato, det var derfor at den gav den store tidsforskel, så det virkede det du sagde erikjakobsen! så du må hellere få pointene, du skal nok lige lægge et svar, ellers kan jeg ikke give dig det! men tak for hjælpen drenge!
Avatar billede jakka Nybegynder
23. april 2003 - 23:22 #13
erik er åbenbart skredet, så du får sgu pointene htm. jeg kan åbenbart ikke selv vælge hvem der skal have dem, når i kun har skrevet det som kommentar! tak for hjælpen!
Avatar billede erikjacobsen Ekspert
23. april 2003 - 23:24 #14
Timestamps opdateres automatisk (nogenlunde - men læs om det).

Jeg samler ikke på point, så jeg skulle i hvert fald ikke have dem :)
Avatar billede jakka Nybegynder
23. april 2003 - 23:28 #15
Jeg havde godt læst om det inde på www.mysql.com, men jeg havde sgu ikke lagt mærke til at de havde ændret sig!
Fint du ikke samlede på point, for jeg kunne kun give dem videre til den der sidst havde skrevet en kommentar!
men mange tak for hjælpen!
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester