By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
alter session set nls_date_format='yyyy-mm-dd'
create table tgt (
dt, id, val
) partition by range(dt)
interval (interval '1' month) (
partition pmin values less than(date '2020-01-01')
)
as
select
date '2020-01-01' + (interval '15' day)*level,
level,
cast(level as varchar2(20))
from dual
connect by level < 30
select *
from tgt
partition for(date '2021-01-01')
DT | ID | VAL |
---|---|---|
2021-01-10 | 25 | 25 |
2021-01-25 | 26 | 26 |
create table stg
for exchange with table tgt
insert into stg
values(date '2021-01-15', 0, 'updated')
1 rows affected
alter table tgt
exchange partition for(date '2021-01-01')
with table stg without validation
select *
from tgt
partition for(date '2021-01-01')
DT | ID | VAL |
---|---|---|
2021-01-15 | 0 | updated |
select *
from stg
DT | ID | VAL |
---|---|---|
2021-01-10 | 25 | 25 |
2021-01-25 | 26 | 26 |