Wat je wilt, is niet mogelijk. Maar je hebt waarschijnlijk de time
verkeerd begrepen typ
:het vertegenwoordigt een nauwkeurig tijdstip op een dag. Het heeft niet veel zin om twee (of meer) keer toe te voegen. bijv. '14:00' + '14:00' = '28:00'
(maar er zit geen 28ste uur in een dag).
Wat je waarschijnlijk wilt, is interval
(die tijdsintervallen vertegenwoordigt; uren, minuten of zelfs jaren). sum()
ondersteunt interval
argumenten.
Als je intervallen gebruikt, is het zo simpel:
SELECT sum(interval_col) FROM my_table;
Hoewel, als je je aan de time
houdt, type (maar je hebt geen reden om dat te doen), je kunt het casten naar interval
om ermee te rekenen:
SELECT sum(time_col::interval) FROM my_table;
Maar nogmaals, het resultaat is interval
, omdat time
waarden mogen het 24e uur van een dag niet overschrijden.
Opmerking :PostgreSQL doet zelfs de cast voor je, dus sum(time_col)
zou ook moeten werken, maar het resultaat is interval
in dit geval ook.