Oracle 分区中的数据是否已压缩

Oracle 分区中的数据是否已压缩,oracle,compression,partitioning,Oracle,Compression,Partitioning,此查询将显示是否已将压缩标记为压缩 Select * From All_Tab_Partitions 讨论中提到,如果使用FAST_LOAD加载,标记为压缩的分区实际上可以包含未压缩的数据 我只想对未压缩的分区发出压缩命令 如何确定分区内的数据是否被压缩 可以在分区上启用压缩,但仅当数据是通过直接路径插入创建的时才使用压缩。使用采样和函数 估计行的百分比 每个分区压缩 模式 create table compression_test ( a number, b varchar2(100

此查询将显示是否已将压缩标记为压缩

Select *
From All_Tab_Partitions
讨论中提到,如果使用FAST_LOAD加载,标记为压缩的分区实际上可以包含未压缩的数据

我只想对未压缩的分区发出压缩命令

如何确定分区内的数据是否被压缩

可以在分区上启用压缩,但仅当数据是通过直接路径插入创建的时才使用压缩。使用采样和函数 估计行的百分比 每个分区压缩

模式

create table compression_test
(
  a number,
  b varchar2(100)
) partition by range(a)
(
  partition p_all_compressed values less than (2) compress,
  partition p_none_compressed values less than (3) compress,
  partition p_half_compressed values less than (4) compress
);

insert /*+ append */ into compression_test partition (p_all_compressed)
select 1, '0123456789' from dual connect by level <= 100000;
commit;
insert into compression_test partition (p_none_compressed)
select 2, '0123456789' from dual connect by level <= 100000;
commit;
insert /*+ append */ into compression_test partition (p_half_compressed)
select 3, '0123456789' from dual connect by level <= 50000;
commit;
insert into compression_test partition (p_half_compressed)
select 3, '0123456789' from dual connect by level <= 50000;
commit;
样本输出

P_ALL_COMPRESSED:              100
P_HALF_COMPRESSED:              55
P_NONE_COMPRESSED:               0
P_ALL_COMPRESSED:              100
P_HALF_COMPRESSED:              55
P_NONE_COMPRESSED:               0