oracle中的索引组织表与堆组织表

简介:

创建一个emp表:

复制代码
[SQL] create table emp 
    as 
    select object_id   empno, 
           object_name ename, 
           created     hiredate, 
           owner       job 
      from all_objects 
    
受影响的行: 53759
时间: 4.172ms
复制代码

sql解析:查询all_object表中的object_id,object_name,created和owner字段,并将其重命名为empno,ename,hiredate和job,有查询结果组成emp表。

为上述表添加主键:

[SQL] alter table emp add constraint emp_pk primary key(empno)
    
受影响的行: 0
时间: 0.330ms

 

复制代码
[SQL] begin 
dbms_stats.gather_table_stats(user,'EMP',cascade=>true);
end;

受影响的行: 1
时间: 2.495ms
复制代码

 

 

复制代码
[SQL] create table heap_addresses 
    ( empno     references emp(empno) on delete cascade, 
      addr_type varchar2(10), 
      street    varchar2(20), 
      city      varchar2(20), 
      state     varchar2(2), 
      zip       number, 
      primary key (empno,addr_type) 
    ) 
   
受影响的行: 0
时间: 0.047ms
复制代码

 

复制代码
[SQL] create table iot_addresses 
    ( empno     references emp(empno) on delete cascade, 
      addr_type varchar2(10), 
      street    varchar2(20), 
      city      varchar2(20), 
      state     varchar2(2), 
      zip       number, 
      primary key (empno,addr_type) 
    ) 
   ORGANIZATION INDEX 
   
受影响的行: 0
时间: 0.081ms
复制代码

ORGANIZATION INDEX表示创建IOT表

 

 

[SQL] insert into heap_addresses select empno, 'WORK', '123 main street', 'Washington', 'DC', 20123 from emp
受影响的行: 53759
时间: 0.633ms

 

insert into iot_addresses 
    select empno, 'WORK', '123 main street', 'Washington', 'DC', 20123 
      from emp

 

复制代码
begin 
dbms_stats.gather_table_stats(user,'HEAP_ADDRESSES');
end;

begin 
dbms_stats.gather_table_stats(user,'IOT_ADDRESSES');
end;
复制代码

 

 

 本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/archive/2012/06/07/2540849.html,如需转载请自行联系原作者

目录
打赏
0
0
0
0
60
分享
相关文章
Oracle查询优化-复制表的定义及数据
【1月更文挑战第5天】【1月更文挑战第14篇】在Oracle数据库中,复制表定义和复制表数据是两个常见的操作。
136 1
[Oracle]索引
本文介绍了数据库索引的基本概念、优化查询的原理及分类。索引是一种数据结构(如B树或B+树),通过排序后的`rowid`来优化查询性能。文章详细解释了索引的构建过程、B+树的特点及其优势,并介绍了五种常见的索引类型:唯一索引、组合索引、反向键索引、位图索引和基于函数的索引。每种索引都有其适用场景和限制,帮助读者更好地理解和应用索引技术。
116 1
[Oracle]索引
实时计算 Flink版产品使用合集之oracle cdc 抽取新增一张表 可以从savepoint恢复吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
实时计算 Flink版产品使用问题之oracle无主键的表支持同步吗如何实现
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
DataWorks产品使用合集之在标准模式下,当同步Oracle的表或视图时,是否需要在源端的测试和生产环境中都存在要同步的表或视图
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
73 3
实时计算 Flink版产品使用合集之同步Oracle数据时,一张表产生了大量的连接数,如何处理
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
Oracle-序列、索引和同义词
Oracle-序列、索引和同义词
68 0
Oracle 12c的多重索引:数据的“多维导航仪”
【4月更文挑战第19天】Oracle 12c的多重索引提升数据查询效率,如同多维导航仪。在同一表上创建针对不同列的多个索引,加速检索过程。虽然过多索引会增加存储和维护成本,但合理选择和使用索引策略,结合位图、函数索引等高级特性,能优化查询,应对复杂场景。数据管理员应善用这些工具,根据需求进行索引管理,支持企业数据分析。

推荐镜像

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等