CREATE TABLE sales_composite 
(salesman_id  NUMBER(5), 
 salesman_name VARCHAR2(30), 
 sales_amount  NUMBER(10), 
 sales_date    DATE)
PARTITION BY RANGE(sales_date) 
SUBPARTITION BY HASH(salesman_id)
SUBPARTITION TEMPLATE(
SUBPARTITION sp1 TABLESPACE data1,
SUBPARTITION sp2 TABLESPACE data2,
SUBPARTITION sp3 TABLESPACE data3,
SUBPARTITION sp4 TABLESPACE data4)
(PARTITION sales_jan2000 VALUES LESS THAN(TO_DATE('02/01/2000','DD/MM/YYYY'))
 PARTITION sales_feb2000 VALUES LESS THAN(TO_DATE('03/01/2000','DD/MM/YYYY'))
 PARTITION sales_mar2000 VALUES LESS THAN(TO_DATE('04/01/2000','DD/MM/YYYY'))
 PARTITION sales_apr2000 VALUES LESS THAN(TO_DATE('05/01/2000','DD/MM/YYYY'))
 PARTITION sales_may2000 VALUES LESS THAN(TO_DATE('06/01/2000','DD/MM/YYYY')));参考官方:
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96524/c12parti.htm#460945

解决方案 »

  1.   

    老大,没怎么看懂啊?
    是不是先以sales_date按RANGE分区,然后再以salesman_id按HASH分区阿?可是我的问题是:
        所有的数据先按是否具有(A、B、C)中的任一种特性来分区
        不具有(A、B、C)中的任一种特性的数据又以日期中的月来分区。即:
        第一分区:具有(A、B、C)中一种或多种特性的数据。
        第二分区:不具有A、B、C)中一种或多种特性的数据。
                  第二分区中的分区又按月来进行分区。还有一个问题:由于按月分区,我也不知道我即将收到的数据是哪个月的,我可不可以根据该数据属于哪个月的,在建这个月的分区呢?
       不知道我说清楚没有?
       谢谢各位大虾!
      

  2.   

    仅供参考,像你说法,难实现,不服合分区要求
    CREATE TABLE bimonthly_regional_sales
    (deptno NUMBER, 
     item_no VARCHAR2(20),
     txn_date DATE, 
     txn_amount NUMBER, 
     state VARCHAR2(2))
    PARTITION BY RANGE (txn_date)
    SUBPARTITION BY LIST (state)
    SUBPARTITION TEMPLATE(
    SUBPARTITION east VALUES('NY', 'VA', 'FL') TABLESPACE ts1,
    SUBPARTITION west VALUES('CA', 'OR', 'HI') TABLESPACE ts2,
    SUBPARTITION central VALUES('IL', 'TX', 'MO') TABLESPACE ts3)( PARTITION janfeb_2000 VALUES LESS THAN (TO_DATE('1-MAR-2000','DD-MON-YYYY')), PARTITION marapr_2000 VALUES LESS THAN (TO_DATE('1-MAY-2000','DD-MON-YYYY')), PARTITION mayjun_2000 VALUES LESS THAN (TO_DATE('1-JUL-2000','DD-MON-YYYY')) );
      

  3.   

    to beckhambobo(beckham):  没怎么看懂你的代码阿!
      

  4.   

    1、可以把该特性数值化,分为=0和大于0两种。如果表test的字段为:    第一分区:具有该特性的数据。
        第二分区:不具有该特性的数据。
                  第二分区中的分区又按月来进行分区。
      

  5.   

    楼主搞的这么复杂阿
    up
    up