Was Sie wollen, ist nicht möglich. Aber Sie haben wahrscheinlich die time
falsch verstanden Typ
:Es repräsentiert einen genauen Zeitpunkt an einem Tag. Es macht nicht viel Sinn, zwei (oder mehr) Mal hinzuzufügen. z.B. '14:00' + '14:00' = '28:00'
(aber es gibt keine 28 Stunden am Tag).
Was Sie wahrscheinlich wollen, ist interval
(was Zeitintervalle darstellt; Stunden, Minuten oder sogar Jahre). sum()
unterstützt interval
Argumente.
Wenn Sie Intervalle verwenden, ist es so einfach:
SELECT sum(interval_col) FROM my_table;
Allerdings, wenn man sich an die time
hält type (aber Sie haben keinen Grund dazu), können Sie es in interval
umwandeln damit rechnen:
SELECT sum(time_col::interval) FROM my_table;
Aber auch hier ist das Ergebnis interval
, weil time
Werte dürfen die 24. Stunde eines Tages nicht überschreiten.
Hinweis :PostgreSQL übernimmt sogar die Umwandlung für Sie, also sum(time_col)
sollte auch funktionieren, aber das Ergebnis ist interval
auch in diesem Fall.