oracle 中的表分区

当数据库的数据不断扩大时,这时可以考虑是用表分区,查询时可以根据表分区查找,节省时间从而提高查询效率。

 

Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 
Connected as system
 
SQL> 
SQL> create tablespace CUS_TS01 datafile 'g://CUS_TS01' size 5m;
 
Tablespace created
SQL> create tablespace CUS_TS02 datafile 'g://CUS_TS02' size 5m;
 
Tablespace created
SQL> create tablespace CUS_TS03 datafile 'g://CUS_TS03' size 5m;
 
Tablespace created
 
SQL> 
SQL> CREATE TABLE MYCUSTOMER
  2  (
  3      CUSTOMER_ID NUMBER NOT NULL PRIMARY KEY,
  4      FIRST_NAME  VARCHAR2(30) NOT NULL,
  5      SEX       CHAR(1)
  6  )
  7  PARTITION BY RANGE (CUSTOMER_ID)
  8  (
  9      PARTITION CUS_PART1 VALUES LESS THAN (10) TABLESPACE CUS_TS01,
 10      PARTITION CUS_PART2 VALUES LESS THAN (20) TABLESPACE CUS_TS02,
 11      PARTITION CUS_PART3 VALUES LESS THAN (maxvalue) TABLESPACE CUS_TS03
 12  );
 
Table created
 
SQL> 
SQL> declare
  2  begin
  3   for i in 1..100 loop
  4    insert into MYCUSTOMER values(i,'xm','m');
  5   end loop;
  6  end;
  7  /
 
PL/SQL procedure successfully completed

SQL> select count(*) cn from MYCUSTOMER;
 
        CN
----------
       100
SQL> select count(*) cn from MYCUSTOMER PARTITION (CUS_PART1);
 
        CN
----------
         9
SQL> select count(*) cn from MYCUSTOMER PARTITION (CUS_PART2);
 
        CN
----------
        10
SQL> select count(*) cn from MYCUSTOMER PARTITION (CUS_PART3);
 
        CN
----------
        81

 

本文仅供参考,标准按照 ORACLE 官方规定

http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_7002.htm#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值