oracle分区表和分区表exchange

查询分区表分区内容

sql 复制代码
select * from emp2 partition(emp2_p3);

1 创建分区表emp1

sql 复制代码
CREATE TABLE emp1
(empno NUMBER(4) NOT NULL,
ename VARCHAR2(10),
sal NUMBER(7))
PARTITION BY RANGE(ename)
(partition emp2_p1 VALUES LESS THAN ('D'),
partition emp2_p2 VALUES LESS THAN ('Q'),
partition emp2_p3 VALUES LESS THAN (MAXVALUE)
);

2 创建分区表emp2

sql 复制代码
CREATE TABLE emp2
(empno NUMBER(4) NOT NULL,
ename VARCHAR2(10),
sal NUMBER(7))
PARTITION BY RANGE(ename)
(partition emp2_p1 VALUES LESS THAN ('D'),
partition emp2_p2 VALUES LESS THAN ('Q'),
partition emp2_p3 VALUES LESS THAN (MAXVALUE)
);

3 创建非分区表

sql 复制代码
create table emp_tmp
(
empno NUMBER(4) NOT NULL,
ename VARCHAR2(10),
sal NUMBER(7)
);

sql 复制代码
create table emp_test  as select * from emp1 where 1=0;(创建emp_test表和emp1表结构一样但没有数据)
create table emp_test  as select * from emp1;(创建emp_test表和emp1一模一样)

4 插入数据

sql 复制代码
insert into emp2 values(1,'Andy',575);
insert into emp2 values(2,'Derek',570);
insert into emp2 values(3,'Patrick',590);
insert into emp2 values(4,'Richard',400);
insert into emp1 values(5,'Heidi',666);

5 将emp2_p2和emp1_p2通过emp_tmp进行交换

sql 复制代码
alter table emp2 exchange partition emp2_p2  with table emp_tmp UPDATE GLOBAL INDEXES;
alter table emp1 exchange partition emp2_p2 with table emp_tmp UPDATE GLOBAL INDEXES;
alter table emp2 exchange partition emp2_p2  with table emp_tmp UPDATE GLOBAL INDEXES;
相关推荐
RestCloud18 小时前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud18 小时前
为什么说零代码 ETL 是未来趋势?
数据库·api
JuiceFS19 小时前
从 MLPerf Storage v2.0 看 AI 训练中的存储性能与扩展能力
运维·后端
ClouGence20 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
chen9451 天前
mysql 3节点mgr集群部署
运维·后端
LH_R1 天前
OneTerm开源堡垒机实战(三):功能扩展与效率提升
运维·后端·安全
dessler1 天前
Hadoop HDFS-高可用集群部署
linux·运维·hdfs
DemonAvenger1 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud2 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api