trunc 函数截断数字或日期的指定部分,保留所需部分,用法为 trunc(expr, fmt),其中:expr 为要截断的数字或日期表达式,fmt 为指定要截断的部分。例子:截断日期为月,返回当月第一天;截断数字为整数,返回不含小数部分的数字。
Oracle 中 TRUNC 函数
TRUNC 函数用于截断指定数字或日期的指定部分,从而仅保留所需的部分。
用法:
TRUNC(expr, fmt)
其中:
- expr:要截断的数字或日期表达式。
-
fmt:指定要截断的部分,可以是以下值:
- 'YYYYMM':年和月
- 'YYYYMMDD':年、月和日
- 'YYYYMMDDHH24':年、月、日和小时(24 小时制)
- 'YYYYMMDDHH24MI':年、月、日、小时和分钟
- 'YYYYMMDDHH24MISS':年、月、日、小时、分钟和秒
示例:
截断日期:
SELECT TRUNC(sysdate, 'YYYYMM') FROM dual;
此查询将返回当前日期所在月的第一天,即格式为 'YYYY-MM-01' 的日期。
截断数字:
SELECT TRUNC(123.45, 0) FROM dual;
此查询将返回 123,因为 fmt 为 0 表示截断所有小数位。
注意:
- TRUNC 函数只截断,不舍入。
- 截断日期时,如果指定的部分不完整(例如,将日期截断为月,但日期为 2 月 29 日),则将返回错误。
- 如果 fmt 为空或无效,TRUNC 函数会返回错误。
以上就是oracle中trunc用法的详细内容,更多请关注CTO智库其它相关文章!