oracle的时间表达,Oracle中的日期类型

1,SYSDATE 获取当前系统时间

select SYSDATE from dual;

格式化日期:     TO_CHAR(SYSDATE,'YY/MM/DD HH24:MI:SS)或     TO_DATE(SYSDATE,'YY/MM/DD HH24:MI:SS)

转换的格式:

表示 year 的:y 表示年的最后一位                       yy 表示年的最后2位                        yyy 表示年的最后3位                        yyyy 用4位数表示年

表示month的: mm 用2位数字表示月                         mon 用简写形式, 比如11月或者nov                         month 用全称, 比如11月或者november

表示day的: dd  表示当月第几天                    ddd 表示当年第几天                     dy  当周第几天,简写, 比如星期五或者fri                     day 当周第几天,全称, 比如星期五或者friday

69e758e85f4f4aae21beaa3fa662d1a1.png

表示hour的:hh   2位数表示小时 12进制                    hh24 2位数表示小时 24小时

表示minute的:mi 2位数表示分钟

表示second的:ss 2位数表示秒 60进制

表示季度的:q 一位数 表示季度 (1-4)

select to_char(sysdate,'q') from dual;

select to_char(sysdate,'Q') from dual;

另外还有ww 用来表示当年第几周 w用来表示当月第几周。

f061f81edaff4ee7196e849990679694.png

24小时制下的时间范围:00:00:00-23:59:59 12小时制下的时间范围:1:00:00-12:59:59

2,ADD_MONTHS(d,)  将给定的日期增加月份

select sysdate,add_months(sysdate,12) from dual; --加1年     select sysdate,add_months(sysdate,1) from dual; --加1月

select sysdate,add_months(sysdate,-12) from dual; --减1年     select sysdate,add_months(sysdate,-1) from dual; --减1月

8b9a7224a6e6d88b4715521813e70030.png

3,LAST_DAY(d) 可以返回指定月份的最后一天

select last_day(sysdate) from dual;

4, MONTHS_BETWEEN(d1,d2) 返回两个日期之间的月份

select months_between(sysdate,to_date('2017/12/31','yyyy/mm/dd')) from dual;

41a864d5e1187f1e1c2f8b1106525f52.png

5, NEW_TIME(d,tz1,tz2)

d是一个数据类型,当tz1的日期和时间是d时,返回时区tz2中的日期和时间,tz1和tz2都是字符串。

时区1   时区2       说明AST       ADT           大西洋标准时间BST       BDT           白令海标准时间CST       CDT           中部标准时间EST       EDT           东部标准时间GMT                     格林尼治标准时间HST       HDT           阿拉斯加—夏威夷标准时间MST       MDT           山区标准时间NST                     纽芬兰标准时间PST       PDT           太平洋标准时间YST       YDT           YUKON标准时间

select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') 北京

to_char(new_time(sysdate,'PDT','GMT'),'yyyy/mm/dd hh24:mi:ss') 洛杉矶 from dual;

6, NEXT_DAY(d,string)

计算在日期d后满足由string给出的条件的第一天.String使用位置;当前会话的语言指定了一周中的某一天.

返回值的时间分量与d的时间分量是相同的. String的内容可以忽略大小写.

select next_day('17-9月-2012','星期六') next_day from dual;

7, ROUND(d[,format])

将日期d按照由format指定的格式进行处理.如果没有给format则使用缺省设置'DD'.

8, TRUNC(d,format)

计算截尾到由format指定单位的日期d.可以使用位置:格式和效果.缺省参数同ROUNG.

trunc(date,fmt)按照给出的要求将日期截断,如果fmt='mi'表示保留分,截断秒

select to_char(trunc(sysdate,'hh'),'yyyy/mm/dd hh24:mi:ss') HH,

to_char(trunc(sysdate,'mi'),'yyyy/mm/dd hh24:mi:ss') HHMM,

to_char(trunc(sysdate,'dd'),'yyyy/mm/dd hh24:mi:ss') DD,

to_char(trunc(sysdate,'mm'),'yyyy/mm/dd hh24:mi:ss') MM  from dual;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值