Avatar billede Slettet bruger
20. oktober 2001 - 21:16 Der er 1 kommentar og
1 løsning

Tids problem

Hejsa.. her er mit problem:
Jeg er ved at lave et log system, som laves over nogle opkald som skal laves fra logfil til udregning af tidsforbrug.

Jeg har en slut tid lad os sige kl.
02:00:00

så har jeg en tid på længenden af opkaldet lad os sige 03:0:0 altså 3 timer

Jeg skal så beregne hvor mange penge som er brugt i dette tidsrun og det skal deles op på disse 2 måder:

1 = mandag-lørdag 07.30 - 19.30
2 = det øvrige tidsrum

Jeg har lavet en del nu, men jeg er stødt på det problem at jeg ikke ved hvordan jeg skal regne dette ud.. for jeg har nu lavet det så at jeg kan beregne starttiden ud, men hvis tiden som f.eks. her
fra 23:00:00
til 02:00:00

altså 3 timer, men på den måde jeg regner det på så får jeg kun:

00:00:00
02:00:00

hvad går jeg?, hvordan får jeg minus med?, eller rettere hvordan får jeg den til at tællebagud?, eller kan man på en måde sige: \"20/10-2001 02:00:00\" - \"03:00:00\" og så få 19/10-2001 23:00:00 ud af det???
Avatar billede apocryphal Nybegynder
21. oktober 2001 - 00:20 #1
I databasen kan du lave to dato-felter:

Starttime og Endtime, og et userId:

Antag database-data:
userId: 1
startTime: 20/10/01 23:00:00
endTime: 21/10/01 01:00:00

Antag SQL:
select datediff(minute, startTime, endTime) from ConnectionTimes where userId = 1

Den vil returnerer forskellen i Minutter... Så kan du jo evt. dividerer med 60, hvis du vil se timer.

Eller læse din SQL bog om DateDiff...

Hvis du kun kender duration, og sluttid, så:

select dateadd(minute, -120, EndDate) from ConnectionTimes where userId = 1

De -120, er 120 minutter tilbage, fra Endtime i databasen.

--
Jonas

Avatar billede cyberinet.com Nybegynder
21. oktober 2001 - 00:51 #2
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
Kurser inden for grundlæggende programmering

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