1
파티션에 따라 두 개를 결합하고 싶지만 이름이 다릅니다. 둘 다 날짜별로 분할됩니다. 예를 들어, 테이블 A에 파티션 'PARTITION_20161231'(날짜는 1.12.2016에서 31.12.2016까지입니다) 및 테이블 B에서 간격 파티션 SYS_XXXXXX가 있습니다. 테이블 B에서 적절한 파티션 이름을 가져 와서 파티션과 결합합니다 테이블 A (테이블 A의 파티션과 동일한 날짜 범위를 가진 파티션을 의미).적절한 파티션을 선택하십시오.
FOR part IN (SELECT partition_name FROM dba_tab_partitions WHERE table_name = 'TABLE_A')
LOOP
SELECT /*+ parallel(8) */
a.rowid
b.attribute
FROM table_a PARTITION(part.partition_name)
LEFT JOIN table_b PARTITION(#PARTITION#) b
ON b.id = a.id
END LOOP;
여기서는 파티션을 병합해야합니다. 여기서는 단순화 된 예입니다. 문제는 # PARTITION #을 얻는 방법입니다.