alter table sms_mt
 partition by range (to_days(down_time))
  (PARTITION p0 VALUES LESS THAN (to_days('2009-01-01')),
   PARTITION p1 VALUES LESS THAN (to_days('2009-02-01')) ,
   PARTITION p2 VALUES LESS THAN (to_days('2009-03-01')) ,
   PARTITION p3 VALUES LESS THAN (to_days('2009-04-01')) ,
   PARTITION p4 VALUES LESS THAN (to_days('2009-05-01')) ,
   PARTITION p5 VALUES LESS THAN (to_days('2009-06-01')) ,
   PARTITION p6 VALUES LESS THAN (to_days('2009-07-01')) ,
   PARTITION p7 VALUES LESS THAN (to_days('2009-08-01')) ,
   PARTITION p8 VALUES LESS THAN (to_days('2009-09-01')) ,
   PARTITION p9 VALUES LESS THAN (to_days('2009-10-01')) ,
   PARTITION p10 VALUES LESS THAN (to_days('2009-11-01')),
   PARTITION p11 VALUES LESS THAN (to_days('2009-12-01')), 
   PARTITION p12 VALUES LESS THAN (to_days('2010-01-01')),         
   PARTITION p13 VALUES LESS THAN (to_days('2010-02-01')) ,
   PARTITION p14 VALUES LESS THAN (to_days('2010-03-01')) ,
   PARTITION p15 VALUES LESS THAN (to_days('2010-04-01')) ,
   PARTITION p16 VALUES LESS THAN (to_days('2010-05-01')) ,
   PARTITION p17 VALUES LESS THAN (to_days('2010-06-01')) ,
   PARTITION p18 VALUES LESS THAN (to_days('2010-07-01')) ,
   PARTITION p19 VALUES LESS THAN (to_days('2010-08-01')) ,
   PARTITION p20 VALUES LESS THAN (to_days('2010-09-01')) ,
   PARTITION p21 VALUES LESS THAN (to_days('2010-10-01')) ,
   PARTITION p22 VALUES LESS THAN (to_days('2010-11-01')),
   PARTITION p23 VALUES LESS THAN (to_days('2010-12-01')),
   PARTITION p24 VALUES LESS THAN (to_days('2011-01-01')),         
   PARTITION p25 VALUES LESS THAN (to_days('2011-02-01')) ,
   PARTITION p26 VALUES LESS THAN (to_days('2011-03-01')) ,
   PARTITION p27 VALUES LESS THAN (to_days('2011-04-01')) ,
   PARTITION p28 VALUES LESS THAN (to_days('2011-05-01')) ,
   PARTITION p29 VALUES LESS THAN (to_days('2011-06-01')) ,
   PARTITION p30 VALUES LESS THAN (to_days('2011-07-01')) ,
   PARTITION p31 VALUES LESS THAN (to_days('2011-08-01')) ,
   PARTITION p32 VALUES LESS THAN (to_days('2011-09-01')) ,
   PARTITION p33 VALUES LESS THAN (to_days('2011-10-01')) ,
   PARTITION p34 VALUES LESS THAN (to_days('2011-11-01')),
   PARTITION p35 VALUES LESS THAN (to_days('2011-12-01')),
   PARTITION p36 VALUES LESS THAN (to_days('2012-01-01')),         
   PARTITION p37 VALUES LESS THAN (to_days('2012-02-01')) ,
   PARTITION p38 VALUES LESS THAN (to_days('2012-03-01')) ,
   PARTITION p39 VALUES LESS THAN (to_days('2012-04-01')) ,
   PARTITION p40 VALUES LESS THAN (to_days('2012-05-01')) ,
   PARTITION p41 VALUES LESS THAN (to_days('2012-06-01')) ,
   PARTITION p42 VALUES LESS THAN (to_days('2012-07-01')) ,
   PARTITION p43 VALUES LESS THAN (to_days('2012-08-01')) ,
   PARTITION p44 VALUES LESS THAN (to_days('2012-09-01')) ,
   PARTITION p45 VALUES LESS THAN (to_days('2012-10-01')) ,
   PARTITION p46 VALUES LESS THAN (to_days('2012-11-01')),
   PARTITION p47 VALUES LESS THAN (to_days('2012-12-01')),
   PARTITION p48 VALUES LESS THAN MAXVALUE );  
我这样定义表分区按时间划分我这只是简单的一个例子我想问的问题是:我规定的分区时间是3年但是如果超出了3年后  这个表分区 该如何划分? 重新创建? 不太可能吧 那要怎么办呢 ??? 大家给点建议   谢谢

解决方案 »

  1.   

    你这里已经有maxvalue的分区了,所以只能采取分裂分区的办法增加分区
      

  2.   


    如果不加Maxvalue 该如何处理 ???
      

  3.   

    不加maxvalue可以直接加分区。
      

  4.   

    加了maxvalue之后,大的就可以在这个partition当中,如果需要了,你还可以做split partiton11G有interval partition
      

  5.   

    你这里已经有maxvalue的分区了,所以只能采取分裂分区的办法增加分区