有人知道如何在sql中做日历吗?

我正在尝试制作日历,然后从另一张表中获得销售日期的值

create or replace PROCEDURE ADD_DIM_DDATA /*(data_d date)*/ IS         
    CURSOR data_ID IS     
    SELECT sale_date
    FROM sales;

    v_d_data number(8);
    v_data_normal sales.SALE_DATE%TYPE;
    v_dia NUMBER(2);
    v_mes number(2);
    v_ano number(4);
    sale_date date;


BEGIN
    select to_date('01/01/1998','dd/mm/yyyy') from dual;
    select to_date('31/12/2023','dd/mm/yyyy') from dual;

    OPEN data_ID;
    LOOP
    v_dia := 0;
    FETCH data_ID
    INTO v_data_normal;   
    SELECT COUNT(*)
    INTO v_dia
    FROM Dim_data 
    WHERE  sale_date = v_data_normal;
    EXIT
    WHEN data_ID%NOTFOUND; 
    IF (v_dia=0) THEN
    INSERT
    INTO Dim_data(
        v_d_data,
        v_data_normal,
        v_dia,
        v_mes,
        v_ano)

    SELECT SEQ_Dim_date.nextval,                  
        sales.sale_date,
        sales.sale_date,
        sales.sale_date,
        sales.sale_date
    FROM sales
    where sales.sale_date = v_data_normal;
End if;       
End loop;  
END;

有谁能够帮助我?