How does one do a SQL select over multiple partitions?

前端 未结 2 498
孤街浪徒
孤街浪徒 2021-02-13 14:48

Is there a more efficient way than:

select * from transactions partition( partition1 ) 
union all 
select * from transactions partition( partition2 ) 
union all          


        
2条回答
  •  闹比i
    闹比i (楼主)
    2021-02-13 15:20

    It should be exceptionally rare that you use the PARTITION( partitionN ) syntax in a query.

    You would normally just want to specify values for the partition key and allow Oracle to perform partition elimination. If your table is partitioned daily based on TRANSACTION_DATE, for example

    SELECT *
      FROM transactions
     WHERE transaction_date IN (date '2010-11-22', 
                                date '2010-11-23', 
                                date '2010-11-24')
    

    would select all the data from today's partition, yesterday's partition, and the day before's partition.

提交回复
热议问题