Procedure - Retorna datas de um intervalo de dias
SQL:
create or alter procedure RETORNA_LISTA_DIAS (XINICIO date, XFIM date) returns (DATA data_do) as
declare variable DIFERENCA integer;
declare variable I integer;
begin
i = 0;
select :XFIM - :XINICIO from rdb$database into :DIFERENCA;
while (i <= :DIFERENCA) DO
begin
data = :xinicio + i;
i = i +1;
suspend;
end
end
Chamada da procedure:
SELECT *
FROM RETORNA_LISTA_DIAS('2019.07.12', current_date)
Retorno:
| DATA |
--------------
| 12.07.2019 |
| 13.07.2019 |
| 14.07.2019 |
| 15.07.2019 |
| 16.07.2019 |