1、获取系统日期: SYSDATE()
2、 格式化日期: TO_CHAR(SYSDATE(),'YY/MM/DD HH24:MI:SS)
或 TO_DATE(SYSDATE(),'YY/MM/DD HH24:MI:SS)
3、 格式化数字: TO_NUMBER
①、当前时间减去7分钟的时间
select sysdate,sysdate - interval '7' MINUTE from dual;
②、当前时间减去7小时的时间
select sysdate - interval '7' hour from dual;
③、当前时间减去7天的时间
select sysdate - interval '7' day from dual;
④、时间间隔乘以一个数字
select sysdate,sysdate - 8*interval '7' hour from dual;
⑤、取两个时间之间的时间差:
select sysdate-1 from dual
select sysdate+/-n from dual (n代表你想差的天数)
4、格式化时间格式
①、TO_CHAR(Sysdate, 'YYYY-MM-DD HH24:MI')中的'YYYY-MM-DD HH24:MI'格式分为两部分,'YYYY-MM-DD'为日期部分,'HH24:MI'为时间部分。
Select TO_CHAR(Sysdate, 'YYYY-MM-DD HH24:MI')
Select TO_CHAR(Sysdate, 'YYYY-MM-DD')
Select TO_CHAR(Sysdate, 'YYYY')
②、trunc()函数
oracle trunc(sysdate,'dd') 日期
select trunc(sysdate ,'dd') from dual ;
select trunc(sysdate ,'yyyy') from dual ;
select trunc(sysdate ,'mm') from dual ;
5、求出本星期的第一天日期(以星期一为第一天)
select trunc(sysdate,'DD')-to_char(sysdate,'D')+2 from dual;
6、求出本星期的第七天日期(以星期日为第七天)
select trunc(sysdate,'DD')-to_char(sysdate,'D')+8 from dual;
7、根据日期格试,取到值到星期几
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual;
oracle 取某月的第一天,最后一天,前一个月的第一天,最后一天,类似方法
8、在Oracle 数据库中取某个月份的第一天和最后一天的方法:
①、Last_day 本月最后一天
select last_day(sysdate) from dual;
select last_day(add_months(SYSDATE, -2)) + 1 FROM dual;
③、取当前日期前一个月的最后一天的日期
select last_day(add_months(SYSDATE, -1)) FROM dual;
select months_between(sysdate,to_date('2005-11-12','yyyy- mm-dd'))from dual;
⑨、按照每周进行统计
⑪、按照每季度进行统计
⑫、按照每年进行统计
9、要找到某月中所有周五的具体日期