在Oracle資料庫中,`TRUNC()`函式有兩種主要用途:
截斷數值:
語法:`TRUNC(number,[decimals])`
說明:此用法用於截斷數值。如果指定了`decimals`參數,則截斷到指定的小數位數;如果省略`decimals`參數,則截斷小數部分,不進行四捨五入。
示例:`TRUNC(12345.6789,2)` 返回 `12345.67`;`TRUNC(12345.6789,-1)` 返回 `12340`。
截斷日期:
語法:`TRUNC(date,[format])`
說明:此用法用於截斷日期。如果指定了`format`參數,則截斷到指定的日期精度(如年、月、日、小時、分鐘等);如果省略`format`參數,則默認為當前日期和時間。
示例:`TRUNC(SYSDATE)` 返回當前日期的開始(同一天的第一天);`TRUNC(SYSDATE,'MONTH')` 返回當前月的開始(即當月的第一天)。
注意事項:
在使用`TRUNC()`函式截斷日期時,如果指定了`format`參數,如`'yyyy'`或`'mm'`,則結果會截斷到指定的單位。例如,`TRUNC(SYSDATE,'yyyy')`將返回當年的一月一日。
如果省略`format`參數,則默認使用當前日期和時間,但這種情況下通常不會用到`TRUNC()`函式,因為它不接受當前日期作為輸入。
通過上述示例和說明,可以更清晰地理解`TRUNC()`函式在Oracle資料庫中的用法。