Anzeige:
Ergebnis 1 bis 6 von 6

Thema: problem mit zeitberechnung (mysql)

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.08.2004
    Beiträge
    31

    problem mit zeitberechnung (mysql)

    hallo,
    ich habe ein problem mit der berechnung von zeiten. meine tabelle sieht folgendermaßen aus:

    fahrzeug datum start ziel
    ---------------------------------------------------
    44 12.03.2005 11:23:42 12:59:56
    22 12.03.2005 08:10:12 10:10:12
    23 13.02.2005 08:10:13 10:08:00
    44 13.03.2005 15:00:03 16:10:05
    23 13.02.2005 17:56:21 19:18:51

    ich möchte wissen wie lang die fahrzeit von zb wagen 44 am 12.03/insgesamt war. mit <sum(ziel - start) / 10000 group by datum> bekomme ich ein ungültiges ergebnis.
    kass mir einer einen ansatz für zeitberechnungen liefern....

    vielen dank

  2. #2
    Registrierter Benutzer
    Registriert seit
    28.08.2002
    Beiträge
    496
    noch eine problemstellung meinerseits:
    kann es auch vorkommen, dass wagen 44 am 1.1. um 12:00 uhr losfährt und am 2.1. um 9:00 ankommt?
    wenn ja, dann wird des mit deiner aktuellen db-struktur schwierig...

    TIMEDIFF() was added in MySQL 4.1.1.
    könnte die lösung für dein prob sein...
    url: http://dev.mysql.com/doc/mysql/en/da...functions.html

    greetz

  3. #3
    Registrierter Benutzer
    Registriert seit
    21.06.1999
    Beiträge
    677
    Du verwendest den falschen Datentyp. Datum+Uhrzeit ist der Datentyp TIMESTAMP, den Du unbedingt verwenden solltest (siehe Anmerkung von quinte17).

    Wenn Du timestamp verwendest, dann kannst Du die SQL-Funbktion AGE verwenden, die Zeitdifferenzen berechnet. Den Rückgabewert (vom SQL-Typ INTERVAL) kannst Du mit to_char oder ähnlichen Konvertierungsfunktionen formatieren. Soweit die Theorie laut SQL-Standard. Inwieweit MySQL das unterstützt, musst Du der Doku entnehmen.

  4. #4
    Registrierter Benutzer
    Registriert seit
    25.08.2004
    Beiträge
    31
    [QUOTE=quinte17]noch eine problemstellung meinerseits:
    kann es auch vorkommen, dass wagen 44 am 1.1. um 12:00 uhr losfährt und am 2.1. um 9:00 ankommt?
    wenn ja, dann wird des mit deiner aktuellen db-struktur schwierig...

    nein, dass ist nicht möglich und wird auch nie vorkommen...
    aber vielen dank mit dem timediff()

  5. #5
    Registrierter Benutzer Avatar von elrond
    Registriert seit
    03.10.2001
    Ort
    potsdam
    Beiträge
    881
    Zitat Zitat von hanswurst
    nein, dass ist nicht möglich und wird auch nie vorkommen...
    aber vielen dank mit dem timediff()
    ich habe in meinem bisherigen Entwicklerdasein einen Satz als sehr wahr kennengelernt:

    Irgendwann wird jede Konstante variabel!

    Deshalb bin ich immer sehr vorsichtig mit aussagen wie "passiert nie..."
    "Um die Welt zu ruinieren, genügt es, wenn jeder seine Pflicht tut." (Winston Churchill)

  6. #6
    Registrierter Benutzer Avatar von mwanaheri
    Registriert seit
    28.10.2003
    Ort
    Bayreuth
    Beiträge
    569
    Zitat Zitat von elrond
    ich habe in meinem bisherigen Entwicklerdasein einen Satz als sehr wahr kennengelernt:

    Irgendwann wird jede Konstante variabel!

    Deshalb bin ich immer sehr vorsichtig mit aussagen wie "passiert nie..."
    Wenn er mit timestamp arbeitet, kann er die Möglichkeit ja auch problemlos nutzen. Tut ihm dann ja nicht weh, wenn ein Wagen am nächsten Tag ankommt. Man sollte wirklich sehr vorsichtig mit "kommt nie vor" sein.
    Das Ziel ist das Ziel.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •