--创建存储过程
create or replace procedure IsLastDay
(
flag out char
)
as
d1 date;
d2 date;
begin
if (to_char(sysdate, 'mmdd') = to_char(last_day(sysdate))) then
flag := 'T';
else
flag := 'F';
end if;
end;
--调用存储过程
declare
flag char;
begin
IslastDay(flag);
if (flag = 'T') then
dbms_outputput_line(sysdate || ' 是本月最后一天');
else
dbms_outputput_line(sysdate || ' 不是本月最后一天');
end if;
end;
select ename,job,hiredate,last_day(hiredate) from emp
where
sysdate-hiredate<365
and
to_char(last_day(hiredate),'yyyy')='1982';
oracle中最简单获取日期的方式是通过查询sysdate来获取。
语句如下:
select sysdate from dual;结果:
如果只获取日期部分:
select to_char(sysdate,'yyyy-mm-dd') from dual;结果:
题主是否想询问“oracle怎样保留月底数据其他删除”?oracle是指数据,
1、首先将自己希望保留的这个月的数据导出到一个临时表中。
2、其次然后将2500万数据整个删除,接着然后将整个表删除。
3、最后将数据从临时表全部导回来即可。
你不是写出来了么?
to_date( to_char(sysdate,'YYYY-MM')|| '-01','YYYY-MM-DD')取得月初
add_months(to_date( to_char(sysdate,'YYYY-MM')|| '-01','YYYY-MM-DD') ,1) 取得下月初
具体 where 子句如下
oper_date >= to_date( to_char(sysdate,'YYYY-MM')|| '-01','YYYY-MM-DD')
and oper_date< add_months(to_date( to_char(sysdate,'YYYY-MM')|| '-01','YYYY-MM-DD') ,1)
select
Trunc(sysdate+1),
to_date(to_char(add_months(sysdate,1),'yyyymm'),'yyyymm')
from dual
以上就是关于求:判断当天是否为当月最后一天 的 oracle存储过程全部的内容,包括:求:判断当天是否为当月最后一天 的 oracle存储过程、oracle 查询入职不满一年的员工在月底的最后一天需要加班。、oracle 获取日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)