För att använda samling definierad som en kapslad tabell eller en associativ array i from
klausul i en fråga du antingen bör, som @Alex Poole korrekt påpekade, skapa en typ av schemanivå (SQL) eller använda en som är tillgänglig för dig via ODCIConst
paket - odcidatelist
eftersom du tänker använda en lista med datum. Din markördefinition kan till exempel se ut så här:
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)
Obs:Du bör ta hänsyn till tidsdelen av ett datum när du utför en datumjämförelse. Om du bara vill jämföra datumdelen skulle det förmodligen vara användbart att bli av med tidsdelen genom att använda trunc()
fungera.