Anmelden

View Full Version : SQl-Frage --> Uhrzeit



Franz.Rung
07-05-15, 09:36
Hallo,

ich hätte folgendes Problem - wie kann ich dir Zeit in HH:MM aus so einem Feld berechnen.

Decimal 6

Beispiel: in der Datenbank steht die Uhrzeit

Endzeit: 190000
Anfang 183000


Wenn es z.B. eine glatte Stunde ist kann ich ja einfach Ende-Anfang rechnen , aber bei obigen Beispiel erhalte eben dann 7000 zurück (sind ja 30 Minuten)

Bei

Ende 53000
Anfang 50000

würde es auch wieder klappen mit 3000 = 30 Minuten

Gibt es hier ein SQL Statement wo ich aber alle Fälle mit abdecken könnte ?

Danke
Franz

B.Hauser
07-05-15, 11:18
In welchem Format steht die Uhrzeit? Numerisch oder als echte Zeit?
Sofern es sich um eine numerische Zeit handelt, musst Du diese zunächst in eine echte Zeit konvertieren.
Sofern es sich um echte Zeiten handelt kannst Du einfach beide Werte voneinander abziehen. SQL ermittelt die Differenz 6 stelling numerisch im Format HHMMSS ausgegeben. Wenn Du nur die Differenz in Stunden, Minuten brauchst, musst Du das Ergebnis nur noch durch 100 dividieren.

Birgitta

Franz.Rung
07-05-15, 11:27
Hallo Birgitta,

bin ich froh dass sich zu diesem Thema jemand meldet !

Die Uhrzeit steht in diesem Feld (Decimal, 6) also die Uhrzeit steht in der Datenbank als numerischer Wert drin. Wie kann ich das denn in eine echte Zeit umwandeln ?

Danke für deine Hilfe

Gruss
Franz

Fuerchau
07-05-15, 11:35
Wiedermal ein Fall für cast:

time(substr(Digits(mytime), 1, 2) concat ':' .....)

Die beiden Time-Ausdrücke voneinander abziehen.
Das Ergebnis ist 6-stellig numerisch in der Form HHMMSS.

B.Hauser
07-05-15, 11:42
Die Konvertierung geht auch so (und m.E. ist das einfacher!)


Time('00010101' concat Digits(NumTime))

Birgitta

Franz.Rung
07-05-15, 13:10
Vielen Dank Birgitta, funktioniert tadellos !