Er zijn ten minste drie manieren om gegevens van specifieke partities te selecteren. Zie de handleiding voor een grondige beschrijving van de syntaxis.
create table agg_summary (period date, lvl_id number)
partition by list (lvl_id)
(
partition p1 values (1),
partition p2 values (2),
partition p3 values (3)
);
--#1: Normal predicate:
select * from agg_summary where lvl_id in (1,2);
--#2: Partition_extended_name:
select * from agg_summary partition (p1)
union all
select * from agg_summary partition (p2);
--#3: Partition_excension_clause:
select * from agg_summary partition for (1)
union all
select * from agg_summary partition for (2);
99,9% van de tijd zou optie #1 voldoende moeten zijn. Oracle bepaalt automatisch welke partities worden gebruikt en snoeit correct. Voor gevallen waarin snoeien niet correct werkt, of het logischer is om te selecteren op basis van de partitienaam of sleutel, zouden opties #2 of #3 moeten werken.