没有合适的资源?快使用搜索试试~ 我知道了~
Oracle数据库日期遍历功能的实现.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 94 浏览量
2021-12-12
09:45:41
上传
评论
收藏 45KB PDF 举报
温馨提示
试读
4页
。。。
资源推荐
资源详情
资源评论
遍历开始日期到结束日期的每一天,若有查询某段日期下有什么业务或者事件发生时,
可用到此函数。
create or replace type class_date as object
(
year varchar2(10),
month varchar2(10),
day varchar2(20)
)--定义所需要的日期类
-----------------------------------------------------------------------------
create or replace type table_date is table of class_date--日期类返回 table 类型
------------------------------------------------------------------------------
create or replace function minusDay(firstDay in varchar2,lastDay in varchar2)
return table_date pipelined
as
firstYear number;
firstMonth number;
lastYear number;
lastMonth number;
totalDay number;
totalMonth number;
currentDay varchar2(40);
currentYear varchar2(40);
type tt is record(
day varchar2(20),
month varchar2(20),
year varchar2(20)
);
v_date tt;
begin
--第一天的日期转换
select to_number(substr(firstDay,1,4))into firstYear from dual ;
select to_number(substr(firstDay,6,2)) into firstMonth from dual;
--第二天的日期转换
select to_number(substr(lastDay,1,4)) into lastYear from dual;
select to_number(substr(lastDay,6,2)) into lastMonth from dual;
--1 第一个日期早于第二个日期
if to_number(to_date(firstDay,'yyyy-mm-dd')-to_date(lastDay,'yyyy-mm-dd')) <0 then
dbms_output.put_line('第一个日期早于第二个日期!');
end if;
--2 第一个日期晚于第二个日期
--------相同年份
if firstYear = lastYear then
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功