Oracle函数大全六十八:TRUNC函数

Oracle中的TRUNC函数是一个非常有用的函数,它可以用于处理日期、数字和字符串。以下是TRUNC函数的详细用法:

处理日期

TRUNC(date[, fmt])

  • date:是要被截断的日期或时间值。
  • fmt(可选):日期格式模型,用于指定截断到哪个单位(如年、月、日等)。如果省略,则默认为日期。

示例:

  1. 截断到年份的第一天:

 

sql复制代码

SELECT TRUNC(SYSDATE, 'YYYY') FROM DUAL;

这将返回当前年份的第一天日期。

  1. 截断到月份的第一天:

 

sql复制代码

SELECT TRUNC(SYSDATE, 'MM') FROM DUAL;

这将返回当前月份的第一天日期。

  1. 截断到当前星期的第一天(通常是周日):

 

sql复制代码

SELECT TRUNC(SYSDATE, 'D') FROM DUAL;

请注意,D在这里表示一周中的天数(周日=1,周一=2,...,周六=7)。因此,TRUNC(SYSDATE, 'D')将返回当前周的第一天(周日)。

  1. 截断到小时:

 

sql复制代码

SELECT TRUNC(TO_DATE('2023-10-23 14:37:00', 'YYYY-MM-DD HH24:MI:SS'), 'HH') FROM DUAL;

这将返回2023-10-23 14:00:00

处理数值

TRUNC(number[, decimal_places])

  • number:是要被截断的数值。
  • decimal_places(可选):要保留的小数位数。如果省略,则默认截断为整数。

示例:

  1. 截断为整数:

 

sql复制代码

SELECT TRUNC(123.456) FROM DUAL;

这将返回123

  1. 截断到小数点后两位:

 

sql复制代码

SELECT TRUNC(123.4567, 2) FROM DUAL;

这将返回123.45

处理字符串

TRUNC(string, n)

  • string:要截断的字符串。
  • n:要截取的字符数。

示例:

 

sql复制代码

SELECT TRUNC('Hello, World!', 5) FROM DUAL;

这将返回'Hello'

注意:虽然Oracle的TRUNC函数通常用于日期和数值,但它也可以用于字符串,但这种情况在实际应用中可能不太常见。

  • 12
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值