修剪時間戳以截斷毫秒
使用時間戳時,可能需要丟棄或捨入時間戳的毫秒部分。例如,刪除幾分之一秒對於簡化資料分析或提高某些情況下的效能很有用。
實現此目的的一種方法是使用轉換為 timestamp(0) 或 timestamptz(0)。此操作將時間戳記四捨五入到最接近的整秒:
SELECT now()::timestamp(0);
結果值的毫秒數將被截斷為零。但是,請注意,這種方法也會截斷微秒和小數秒。
另一個選擇是利用 date_trunc() 函數,它可以對截斷過程提供更精細的控制。此函數有兩個參數:要截斷的欄位(例如“秒”)和要截斷的時間戳記。透過指定「秒」作為字段,您可以刪除毫秒而不更改秒:
SELECT date_trunc('second', now()::timestamp);
date_trunc() 函數支援多種截斷字段,包括「分鐘」和「小時」。這樣可以更靈活地控制所需的精度等級。
需要注意的是,兩種情況下傳回值的資料類型都與輸入相符。如果原始時間戳記是timestamp或timestamptz,結果也會是相同型別。
以上是如何在 SQL 中刪除時間戳記中的毫秒數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!