【发布时间】:2012-04-30 02:07:57
【问题描述】:
如何丢弃/舍入millisecond 部分,如果second 部分也从timestamp w/o timezone 中删除更好?
【问题讨论】:
标签: sql postgresql casting timestamp rounding
如何丢弃/舍入millisecond 部分,如果second 部分也从timestamp w/o timezone 中删除更好?
【问题讨论】:
标签: sql postgresql casting timestamp rounding
投射到timestamp(0) 或timestamptz(0) 轮回 到整秒:
SELECT now()::timestamp(0);
分数不存储在这种类型的表列中。
date_trunc() 截断(保持秒数不变)——这通常是你真正想要的:
SELECT date_trunc('second', now()::timestamp);
【讨论】:
[Amazon](500310) Invalid operation: Assert
丢弃毫秒数:
SELECT DATE_TRUNC('second', CURRENT_TIMESTAMP::timestamp);
2019-08-23 16:42:43
丢弃秒数:
SELECT DATE_TRUNC('minute', CURRENT_TIMESTAMP::timestamp);
2019-08-23 16:42:00
【讨论】:
如果你只是想要时间,这里是 postgres 的代码
SELECT DATE_TRUNC('second', CURRENT_TIMESTAMP::timestamp)::time;
它将返回“没有时区的时间”数据类型
【讨论】: