Discard millisecond part from timestamp

后端 未结 3 1570
长情又很酷
长情又很酷 2020-12-01 01:22

How can I discard/round the millisecond part, better if the second part is also removed from a timestamp w/o timezone ?

相关标签:
3条回答
  • 2020-12-01 01:42

    Discard milliseconds:

    SELECT DATE_TRUNC('second', CURRENT_TIMESTAMP::timestamp);
    

    2019-08-23 16:42:43

    Discard seconds:

    SELECT DATE_TRUNC('minute', CURRENT_TIMESTAMP::timestamp);
    

    2019-08-23 16:42:00

    0 讨论(0)
  • 2020-12-01 01:48

    A cast to timestamp(0) or timestamptz(0) rounds to full seconds:

    SELECT now()::timestamp(0);
    

    Fractions are not stored in table columns of this type.

    date_trunc() truncates (leaves seconds unchanged) - which is often what you really want:

    SELECT date_trunc('second', now()::timestamp);
    
    0 讨论(0)
  • 2020-12-01 01:57

    if you just want time, here is the code for postgres

    SELECT DATE_TRUNC('second', CURRENT_TIMESTAMP::timestamp)::time;
    

    it will return 'time without time zone' data type

    0 讨论(0)
提交回复
热议问题