Oracle数据库中如果不熟悉日期操作,获取相应信息的时候,要写很复杂的语句,下面举例几个常用的取值方式:
select hiredate,
to_number(to_char(hiredate,'hh24')) 时,
to_number(to_char(hiredate,'mi')) 分,
to_number(to_char(hiredate,'ss')) 秒,
to_number(to_char(hiredate,'dd')) 日,
to_number(to_char(hiredate,'mm')) 月,
to_number(to_char(hiredate,'yyyy')) 年,
to_number(to_char(hiredate,'ddd')) 年内第几天,
trunc(hiredate,'dd') 一天之始,
trunc(hiredate,'day') 周初,
trunc(hiredate,'mm') 月初,
last_day(hiredate) 月末,
add_months(trunc(hiredate,'mm'),1) 下月初,
trunc(hiredate,'yy') 年初,
to_char(hiredate,'day') 周几,
to_char(hiredate,'month') 月份
from (select hiredate+30/24/60/60+20/24/60+5/24 as hiredate from emp where rownum <=1)
hiredate | 1980-12-17 05:20:30 |
---|---|
时 | 5 |
分 | 520 |
秒 | 30 |
日 | 7 |
月 | 12 |
年 | 1980 |
年内第几天 | 352 |
一天之始 | 1980-12-17 |
周初 | 1980-12-14 |
月初 | 1980-12-01 |
月末 | 1980-12-31 05:20:30 |
下月初 | 1981-01-01 |
年初 | 1980-01-01 |
周几 | 星期三 |
月份 | 12月 |