首頁 >資料庫 >mysql教程 >如何在 SQL 中刪除時間戳記中的毫秒數?

如何在 SQL 中刪除時間戳記中的毫秒數?

Linda Hamilton
Linda Hamilton原創
2024-12-25 17:47:14341瀏覽

How Can I Trim Milliseconds from Timestamps in SQL?

修剪時間戳以截斷毫秒

使用時間戳時,可能需要丟棄或捨入時間戳的毫秒部分。例如,刪除幾分之一秒對於簡化資料分析或提高某些情況下的效能很有用。

實現此目的的一種方法是使用轉換為 timestamp(0) 或 timestamptz(0)。此操作將時間戳記四捨五入到最接近的整秒:

SELECT now()::timestamp(0);

結果值的毫秒數將被截斷為零。但是,請注意,這種方法也會截斷微秒和小數秒。

另一個選擇是利用 date_trunc() 函數,它可以對截斷過程提供更精細的控制。此函數有兩個參數:要截斷的欄位(例如“秒”)和要截斷的時間戳記。透過指定「秒」作為字段,您可以刪除毫秒而不更改秒:

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

date_trunc() 函數支援多種截斷字段,包括「分鐘」和「小時」。這樣可以更靈活地控制所需的精度等級。

需要注意的是,兩種情況下傳回值的資料類型都與輸入相符。如果原始時間戳記是timestamp或timestamptz,結果也會是相同型別。

以上是如何在 SQL 中刪除時間戳記中的毫秒數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn