我有一個表的列表分區兩列MY_ID(整數值1,2,3,5,8 ... 1100),RUN_DATE(過去幾天)的順序。Oracle強制分區修剪在條件
我的查詢是
select * from my_partitioned_table
where run_date = '10-sep-2014'
and my_id in (select my_id from mapping_table where category = 1)
;
這是要爲全表掃描,具有如下解釋計劃。
PX RECEIVE 115K 4M 600 1,01 PCWP
PX SEND BROADCAST :TQ10000 115K 4M 600 1,00 P->P BROADCAST
PX BLOCK ITERATOR 115K 4M 600 1,00 PCWC
TABLE ACCESS FULL MAPPING_TABLE 115K 4M 600 1,00 PCWP
PX BLOCK ITERATOR 1G 412G 34849 1,01 PCWC 1 16
TABLE ACCESS FULL MY_PARTITIONED_TABLE 1G 412G 34849 1,01 PCWP KEY KEY
我該如何強制它只訪問某些分區而不是進行全表掃描?
對不起,我對Oracle提示並不陌生,以前找不到具體問題。
請向我們展示表格的結構,請 – zaratustra 2014-09-25 13:11:56