For at bruge samling defineret som en indlejret tabel eller en associativ matrix i from
klausul i en forespørgsel, du skal enten, som @Alex Poole korrekt påpegede, oprette en skemaniveau (SQL) type eller bruge en, som er tilgængelig for dig gennem ODCIConst
pakke - odcidatelist
da du agter at bruge en liste over datoer. For eksempel kan din markørdefinition se sådan ud:
cursor DataCursor_Sort(p_brth_dt in sys.odcidatelist) is
select *
from sourceTable
where a.brth_dt IN (select column_value
from table(p_brth_dt))
ELLER
cursor DataCursor_Sort(p_brth_dt in sys.odcidatelist) is
select s.*
from sourceTable s
join table(p_brth_dt) t
on (s.brth_dt = t.column_value)
Bemærk:Du bør tage tidsdelen af en dato i betragtning, når du udfører en datosammenligning. Hvis du kun vil sammenligne datodelen, ville det sandsynligvis være nyttigt at slippe af med tidsdelen ved at bruge trunc()
fungere.