2012-04-18 142 views

回答

68

它轉換爲timestamp(0)timestamptz(0)刪除小數秒:

SELECT now()::timestamp(0); 

像@karlgold評論說,這到全秒,如果你跟上這個數據類型工作分數不存儲。

使用date_trunc()更具體的需求。

SELECT date_trunc('second', now()::timestamp); 

截斷(葉秒不變)。進一步的操作可以重新引入小數秒。

SELECT date_trunc('minute', now())::timestamp(0); 

但要注意,這個值分配給不同的數據類型的一個列或變量可以導致:此時去除第二部分,以及 -

當然,可以結合兩種另一個分配鑄造

+10

請注意,timestamp(0)和timestamptz(0)將舍入而不是截斷。如果您想保留時間戳的其餘部分,請使用date_trunc。 – karlgold 2015-01-07 20:53:47

+0

@karlgold非常重要的評論謝謝 – Brettski 2016-02-24 06:45:50

+0

@saul:你的建議編輯被拒絕了,但你是對的。我申請你的澄清,謝謝 – 2016-03-05 17:35:44