Oracle日期函数TRUNC

Oracle日期函数TRUNC

OracleTRUNC()函数返回一个DATE截断为指定单位的值。

语法
下面显示了OracleTRUNC()函数的语法:

TRUNC(date, format)
参数
该TRUNC()函数接受两个参数:

1)date
的date参数是一个DATE值或计算结果为的表达式DATE将被截断值。

2)format
的format参数确定,其中该单元  date将被截断。

该format参数是可选的。其默认值是DD指示TRUNC()函数将日期截断为午夜。

下表说明了该format参数的有效值:

搜索格式...

FormatDescription
CC, SCCCentury, with or without minus sign (BC)
[S]YYYY, [S]YEAR, YYY, YY, YYear (in various appearances)
IYYY, IYY, IY, IISO year
QQuarter
MONTH, MON, MM, RMMonth (full name, abbreviated name, numeric, Roman numerals)
IW, WW (ISO)week number
WDay of the week
DDD, DD, JDay (of the year/of the month/Julian day)
DAY, DY, DClosest Sunday
HH, HH12, HH24Hours
MIMinutes

返回值
该TRUNC()函数返回DATE截断为指定单位的值。

例子
让我们看一些使用OracleTRUNC()函数的示例。

A)使用默认格式截断日期值

请考虑以下日期时间值:

04-Aug-2017 15:35:32
以下语句将日期值截断为午夜:

SELECT
  TO_CHAR( 
    TRUNC(TO_DATE( '04-Aug-2017 15:35:32 ', 'DD-Mon-YYYY HH24:MI:SS' )), 
    'DD-Mon-YYYY HH24:MI:SS' 
  ) result
FROM
  dual; 
输出:

RESULT              
--------------------
04-Aug-2017 00:00:00
在这个例子中

首先,该TO_DATE()函数将日期字符串转换为DATE值。
其次,该TRUNC()函数将日期截断。因为我们没有传递format参数,所以该TRUNC()函数使用将日期截断为午夜的默认值。
第三,TO_CHAR()函数格式化了函数的结果TRUNC()。
B)获取日期中的第一天

以下语句返回当前月份的第一天。

SELECT
  TRUNC( SYSDATE, 'MM' ) result
FROM
  dual;
输出:

RESULT   
---------
01-MAY-20
如果您要返回特定日期的月份的第一天,则只需使用该日期而不是 SYSDATE

C)获取日期四分之一的第一天

同样,您可以获取当前季度的第一天:

SELECT TRUNC( SYSDATE, 'Q' ) result
FROM  dual;
输出:

RESULT   
---------
01-APR-20
在此示例中,我们用MM四分之一(Q)替换了月份()。

在本教程中,您学习了如何使用OracleTRUNC()函数将日期值截断为指定的单位。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值