Oracle中的TRUNC
函数主要用于截取时间或数值,并返回指定的值。以下是TRUNC
函数的主要用法:
-
日期处理:
- 语法:
TRUNC(date,[fmt])
date
是必要参数,表示输入的日期值。fmt
是可选参数,表示日期格式。如果忽略此参数,则默认截取到日期的0点。- 示例:
TRUNC(SYSDATE, 'month')
返回当月的第一天。TRUNC(SYSDATE, 'year')
返回当年的第一天。TRUNC(TO_DATE('24-Nov-1999 08:37 pm','dd-mon-yyyy hh:mi am'),'hh')
返回'24-Nov-1999 08:00:00 am'
。
- 语法:
-
数值处理:
- 语法:
TRUNC(number,[decimals])
number
是必要参数,表示输入的数值。decimals
是可选参数,表示要截取的位数。如果忽略此参数,则默认截掉小数点后边的值。- 示例:
TRUNC(123.456789, 2)
返回123.45
。- 如果只使用
TRUNC(123.456789)
,则返回123
。
- 语法:
-
在表达式中使用:
TRUNC
函数不仅可以用于直接处理日期或数值,还可以用于表达式中。
注意:
- 当
fmt
参数用于日期处理时,其值可以是'DD'
,'HH'
,'MI'
,'SS'
,'MONTH'
,'YEAR'
等,分别表示日期、小时、分钟、秒、月份和年份的截取。 - 在处理日期时,如果
fmt
参数的值为'DD'
,并且日期值中的时间为非0点,则截取后的日期值的时间部分将被置为0点。
以上信息仅供参考,如有需要,建议查阅Oracle官方文档或相关教程。