Oracle的TRUNC函数用于将日期或数值表达式截断为指定的精度。具体而言,它可以用来截断日期表达式为指定的日期部分(例如年、月、日)或数值表达式为指定的小数位数。
下面是TRUNC函数的一些常见用法:
-
截断日期表达式为指定的日期部分:
- TRUNC(date, ‘YYYY’):截断为年份部分。
- TRUNC(date, ‘MM’):截断为月份部分。
- TRUNC(date, ‘DD’):截断为天数部分。
-
截断数值表达式为指定的小数位数:
- TRUNC(number, n):截断为n位小数,其中n为非负整数。
需要注意的是,TRUNC函数对于日期表达式的截断会将不属于指定部分的部分置为0。而对于数值表达式的截断会截取整数部分,并将小数部分舍去。
以下是一些示例:
- TRUNC(TO_DATE(‘2022-10-15’, ‘YYYY-MM-DD’), ‘YYYY’):将日期2022-10-15截断为年份部分,结果为2022-01-01。
- TRUNC(TO_DATE(‘2022-10-15’, ‘YYYY-MM-DD’), ‘MM’):将日期2022-10-15截断为月份部分,结果为2022-10-01。
- TRUNC(TO_DATE(‘2022-10-15’, ‘YYYY-MM-DD’), ‘DD’):将日期2022-10-15截断为天数部分,结果为2022-10-15。
- TRUNC(3.14159, 2):将数值3.14159截断为2位小数,结果为3.14。
总而言之,TRUNC函数可以用来截断日期或数值表达式,以满足特定的精度要求。