Optellen van tijd met SQL-statement

Pagina: 1
Acties:
  • 203 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
Ik heb een tabel met een veld 'duur'. Dit veld bevat de tijd in seconden, bv 00:05 (5 seconden). Nu wil ik een sum maken die deze tijden optelt, maar met SUM(duur) werkt niet. Hoe kan ik dit oplossen?

Acties:
  • 0 Henk 'm!

Verwijderd

Kan je het veld omzetten naar een integer (00:05 = 5) die optellen en in seconden/minuten representeren?

Acties:
  • 0 Henk 'm!

Verwijderd

Je moet het kolom type wel in time zetten.
Dan mag het verder geen probleem zijn:

SELECT sum(duur)

Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
helaas. Het veld heeft de eigenschap datum/tijd en het resultaat van sum(duur) is: 9,5295566886E-05 ??

Acties:
  • 0 Henk 'm!

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 10-10 14:20
Het veld moet geen datum/tijd(DATETIME) zijn maar TIME
In een datetime hoor je een tijdSTIP te stoppen, geen tijdsduur... ;)

Acties:
  • 0 Henk 'm!

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 14-10 13:38

dusty

Celebrate Life!

Welke datum en tijd neem jij dan als referentie punt waardoor je kan zien dat het 5 seconden duurt?

Time is velen malen netter om te gebruiken, als het echter niet anders kan kan je het verschil tussen je referentie datum/tijd en de waarde in het tabel en daar de sum op uitvoeren. (maar dat is wel een stuk langzamer dan gewoon netjes een TIME veld te gebruiken.)

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
[quote]dusty schreef op 28 april 2003 @ 09:44:
Welke datum en tijd neem jij dan als referentie punt waardoor je kan zien dat het 5 seconden duurt?
quote]

Dit krijg ik zo aangeleverd van een centrale.

De database is Access...

O ja, ik heb alleen de optie datum/tijd

[ Voor 8% gewijzigd door pkouwer op 28-04-2003 10:41 ]


Acties:
  • 0 Henk 'm!

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06 12:38
5.859375E-02 sec houdt in dat de query eigenlijk 0 seconde duurde!....
Heb ik zelf ook wel is mee zitten pieren

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Acties:
  • 0 Henk 'm!

Verwijderd

Gewoon omrekenen naar seconden of nog kleiner en daar een sum omheen zetten.
sum((to_number(duur,mi)*60) + to_number(duur,ss))

Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
AvOn schreef op 28 april 2003 @ 11:03:
5.859375E-02 sec houdt in dat de query eigenlijk 0 seconde duurde!....
Heb ik zelf ook wel is mee zitten pieren
en het resultaat ??

Acties:
  • 0 Henk 'm!

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06 12:38
Nou daarbij ging het om het meten van de snelheid van een ASP script, bv bij de waarden
timer 47964.85
startpunt 47964.79

Kwam dit als resultaat uit 5.859375E-02 sec omdat het verschil kleiner is dan 0.5 ms
Heb nog geen fraaie oplossing

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
hmm, dan heb je een referentiepunt. Dat heb ik nl. niet. Ik krijg gewoon de tekst "...00:04..." uit de centrale.

Acties:
  • 0 Henk 'm!

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06 12:38
Kan je de situatie rondom wat verder uitdiepen?... voorbeeld tabelletje e.d. ?

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
Ik krijg uit de centrale een string met een aantal gegevens. Uit die string filter ik de datum, tijd en de duur v.d. oproep. En ziet er bv als volgt uit: 24.04.0315:00:0000:0608008080.

In deze string is 00:06 de tijdsduur v.h. gesprek. Nu wil ik in een overzicht zien dat toestel 100 in maart voor 20 minuten en 5 seconden heeft gebeld.

Het veld duur (duur vh gesprek) is van het type datum/tijd in Access

Acties:
  • 0 Henk 'm!

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06 12:38
dan is het toch simpel een formuliertje bouwen met een sql er achter die het toestel
selecteerd en vervolgens tijd=tijd+tijdgebeld ?

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
wat wil je hier dan mee bereiken ?

Acties:
  • 0 Henk 'm!

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06 12:38
pkouwer schreef op 28 april 2003 @ 14:48:
[...]

wat wil je hier dan mee bereiken ?
Nu wil ik in een overzicht zien dat toestel 100 in maart voor 20 minuten en 5 seconden heeft gebeld.

Het veld duur (duur vh gesprek) is van het type datum/tijd in Access
dit?!

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
Wat stelt tijd dan voor. Ik heb geen referentie

Acties:
  • 0 Henk 'm!

  • pkouwer
  • Registratie: November 2001
  • Laatst online: 07-10 13:23
opgelost:
SELECT sum(datediff("s","00:00:00",duur))
FROM registraties;


thnx !!
Pagina: 1