时间操作ORACLE

来源:互联网 发布:科学数据geodata 编辑:程序博客网 时间:2024/05/30 23:36
1 通过具体日期得到对应的星期
  Calendalr calendar = Calendar.getInstance();
  calendar.setTime(需要被计算的日期);
  int c = calendar.get(Calendar.DAY_OF_WEEK);


2  //将yyyy-MM-dd HH:mm:ss格式的日期转换成yyyy-MM-dd格式
DateUtils.String2Date(DateUtils.Date2String(对应的日期, CodeCollection.dateFormatForPage),CodeCollection.dateFormatForPage)

时间操作
一个月的第一天 
SELECT to_date(to_char(SYSDATE,'yyyy-mm')||'-01','yyyy-mm-dd') FROM dual 
一年的第一天 
SELECT to_date(to_char(SYSDATE,'yyyy')||'-01-01','yyyy-mm-dd' ) FROM dual 
季度的第一天 
SELECT to_date(to_char(SYSDATE,'yyyy-')||lpad(floor(to_number(to_char(SYSDATE,'mm'))/3)*3+1,2,'0')||'-01','yyyy-mm-dd') FROM dual 
上个月的最后一天 
SELECT trunc(last_day(add_months(SYSDATE,-1)))+1-1/24/60/60 FROM dual 
本年的最后一天 
SELECT trunc(last_day(to_date(to_char(SYSDATE,'yyyy')||'-12-01','yyyy-mm-dd')))+1-1/24/60/60 FROM dual 
本月的最后一天 
select trunc(last_day(sysdate))+1-1/24/60/60 from dual 
本月的第一个星期一 
SELECT next_day( to_date(to_char(SYSDATE,'yyyy-mm')||'-01','yyyy-mm-dd'),'星期一') FROM dual 
去掉时分秒 
SELECT trunc(sysdate) FROM dual 
显示星期几 
SELECT to_char(SYSDATE,'Day') FROM dual 
取得某个月的天数 
SELECT trunc(last_day(SYSDATE))-to_date(to_char(SYSDATE,'yyyy-mm')||'-01','yyyy-mm-dd')+1 FROM dual 
判断是否闰年 
SELECT decode(to_char(last_day(to_date(to_char(SYSDATE,'yyyy')||'-02-01','yyyy-mm-dd')),'dd'),'28','平年','闰年') FROM dual 
一个季度多少天 
SELECT last_day(to_date(to_char(SYSDATE,'yyyy-')||lpad(floor(to_number(to_char(SYSDATE,'mm'))/3)*3+3,2,'0')||'-01','yyyy-mm-dd'))-to_date(to_char(SYSDATE,'yyyy-')||lpad(floor(to_number(to_char(SYSDATE,'mm'))/3)*3+1,2,'0')||'-01','yyyy-mm-dd')+1FROM dual