需要写一个自定义函数,要求:
输入两个日期(比如开始日期2020/01/15,结束日期2021/02/03),还有一个周期(此周期为月,半年,年,季度)用周期作条件,开始日期作为第一个日期,截止结束日期,日期递增,递增条件为周期,将此日期区间内的日期列表返回为一个字符串。
效果如下:
实现方案:
创建中间表,存储周期范围 数字:
create table temp_test(row_num number,lev_rank number);
自定义 函数如下:
CREATE OR REPLACE FUNCTION Func_getdatestr(
p_start_date VARCHAR2, -- 开始日期 'YYYY/MM/DD'
p_end_date VARCHAR2, -- 开始日期 'YYYY/MM/DD'
p_type NUMBER -- 周期类型 1:月、2:半年、3:年、4:季度
) RETURN VARCHAR2
I