我有一个我想要截断的时间戳.我在oracle中使用trunc功能.这似乎做了我想要的,但是从文档中它应该只接受日期而不是时间戳
select TRUNC(TO_DATE('22-AUG-13'), 'YEAR') from dual;
select TRUNC(to_timestamp('2013-08-22 06:00:00','YYYY-MM-DD HH24:MI:SS'), 'YEAR') from dual;
Run Code Online (Sandbox Code Playgroud)
以上两者都返回相同的结果.
我认为它的工作原理是因为时间戳是这里引用的日期格式的扩展
TIMESTAMP数据类型是DATE数据类型的扩展.它存储DATE数据类型的年,月和日,加上小时,分钟和秒值.它没有时区.TIMESTAMP数据类型具有以下形式:
我的问题是返回值的类型是什么?它总是参数值的类型吗?参数是时间戳的时间戳.参数为日期的日期.
我怎样才能找到退货类型?
谢谢
来自Oracle参考:https:
//docs.oracle.com/cd/B19306_01/server.102/b14200/functions201.htm
TRUNC(日期)函数返回日期,截断日期的时间部分为格式模型fmt指定的单位.此功能对NLS_ CALENDAR会话参数不敏感.它根据公历的规则运作.即使您为date指定了不同的日期时间数据类型,返回的值也始终为数据类型DATE.