Если вы хотите отбросить миллисекунды, вы можете использовать date_trunc()
:
date_trunc('second', mytimestamp)
С другой стороны, если вы хотите округлить до ближайшей секунды, вы можете использовать timestamp(0)
:
mytimestamp::timestamp(0)
Демо на DB Fiddle - Я использовал метку времени, десятки секунд которой больше 5
, чтобы сделать тестового представителя:
select
mytimestamp,
date_trunc('second', mytimestamp) trunc_mytimestamp,
mytimestamp::timestamp(0) round_mytimestamp
from (values('2010-01-01 14:34:43.567543'::timestamp)) as t(mytimestamp)
mytimestamp | trunc_mytimestamp | round_mytimestamp
:------------------------- | :------------------ | :------------------
2010-01-01 14:34:43.567543 | 2010-01-01 14:34:43 | 2010-01-01 14:34:44