每日干货好文分享丨请点击 关注,我来为大家科普一下关于oracle如何把timestamp转化为date?下面希望有你要的答案,我们一起来看看吧!

oracle如何把timestamp转化为date(Oracle日期函数timestamp)

oracle如何把timestamp转化为date

每日干货好文分享丨请点击 关注

欢迎关注天善智能微信公众号,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区。

对商业智能BI、数据分析挖掘、大数据、机器学习,python,R感兴趣同学加fridaybifly,邀请你进入头条数据爱好者交流群,数据爱好者们都在这儿。

TIMESTAMP数据类型:是DATE的扩展,可以存储年、月、日、小时、分钟、秒,同时还可以存储秒的小数部分。


timestamp以日期格式输出表示

select TO_CHAR(to_timestamp('2009-7-30','yyyy-mm-dd hh24:mi:ss') ,'YYYY-MM-DD HH24:MI:SS') from dual;

结果为:2009-07-30 00:00:00


date格式的时间差,以秒为单位:

select (to_date('2009-7-30', 'yyyy-mm-dd hh24:mi:ss') - to_date('2009-7-29', 'YYYY-MM-DD HH24:mi:ss')) * 86400 as "itvtime" from dual;

结果为:86400


timestamp格式求时间差,以秒为单位:

select (to_date(to_char(to_timestamp('2009-7-30', 'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') -to_date(to_char(to_timestamp('2009-7-29', 'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss'),'YYYY-MM-DD HH24:mi:ss')) * 86400 as "Mtime" from dual;

结果为:86400


求任意timestamp格式的时间戳,据1970年01月01日的毫秒数

select (to_date(to_char(to_timestamp('2009-7-30', 'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') -to_date('1970-01-01 00:00:00','YYYY-MM-DD HH24:mi:ss')) * 86400000 from dual;

结果为:1248912000000


根据日期求当月天数:

select add_months(trunc(to_date('2009-9', 'yyyy-mm'), 'mm'), 1) - trunc(to_date('2009-9', 'yyyy-mm'), 'mm') from dual;

结果为:30

对商业智能BI、数据分析挖掘、大数据、机器学习,python,R感兴趣同学加fridaybifly,邀请你进入头条数据爱好者交流群,数据爱好者们都在这儿。

转载请保留以下内容:

本文来源自天善社区GeorgeYao博客,

原文链接:https://ask.hellobi.com/blog/GeorgeYao/6292

,