select * from transactions partition( partition1 )
union all
select * from transactions partition( partition2 )
union all
select * from transactions partition( partition3 );
Ответ 1
Не исключено, что вы используете синтаксис PARTITION (partitionN) в запросе.
Обычно вы просто хотите указать значения для ключа раздела и позволить Oracle выполнять устранение разделов. Если ваша таблица разделяется ежедневно на основе TRANSACTION_DATE, например
SELECT *
FROM transactions
WHERE transaction_date IN (date '2010-11-22',
date '2010-11-23',
date '2010-11-24')
выберет все данные из сегодняшнего раздела, вчерашнего раздела и день перед разделом.
Ответ 2
Можете ли вы предоставить дополнительный контекст? Каковы ваши предикаты? Что заставляет вас думать, что вам нужно явно указывать оптимизатору на использование нескольких разделов. Например, у вас может быть неправильный ключ раздела.