Hey. Und zwar hab ich mal eine etwas speziellere Frage bezüglich Timestamp. Aus einer Select anfrage erhalte ich eine Zeit-Differenz.
Select SUM(session_end-session_start) as sum_diff …
Ergebnis wäre dann zb.
86:45:59.796
Wir schaffe ich daraus die komplette anzahl der Minuten zu extrahieren. Sowas wie:
EXTRACT HOURS FROM SUM(session_end-session_start) … funktioniert erstens nicht (??) und zweitens würde das lediglich die 45 Minuten auslesen. Jemand ne idee, wie ich das bewerkstelligen könnte?
Du kannst die einzelnen Teile jeweils mit dem passenden Faktor multiplizieren. Also den Stundenwert mit 60, den Minutenwert mit 1 (oder so lassen ), dann hast du die Anzahl Minuten.
Wie kommst Du darauf, daß das NICHT funktioniert? Wenn Du die Minuten daraus extrahierst, bekommst Du das korrekte Ergebniss: 45. Das mag nun allerdings für Dich nicht korrekt sein, aber hier ist PEBKAC im Spiel:
test=*# select extract(hour from '86:45:59.796'::interval)*60 + extract (minutes from '86:45:59.796'::interval);
?column?
----------
5205
(1 Zeile)
Zeit: 0,267 ms
test=*#