按日期字段做范围分区表 分区表可以add drop split merge分区 1千万多条如果在小型机上数据量不算大 900万条用SqlServer7在dell的PCServer上都很轻松 设计和数据库调优很重要
create table info_call_day ( ... ) paratitions range by call_date ( paratition p20060101 less than to_date('20060101','yyyymmdd'), paratition p20060102 less than to_date('20060102','yyyymmdd'), paratition p20060103 less than to_date('20060103','yyyymmdd'), paratition p20060104 less than to_date('20060104','yyyymmdd'), ..... )如果没有索引的话很简单 清空或删除40天前的一个分区 alter table info_call_day truncate paratition p20060101; 即可或者 alter table info_call_day drop paratition p20060101;如果有索引,必须对每个索引进行重建 alter index idx_info_call_day rebuild ; 否则索引不可用。
分区表可以add drop split merge分区
1千万多条如果在小型机上数据量不算大
900万条用SqlServer7在dell的PCServer上都很轻松
设计和数据库调优很重要
...
)
paratitions range by call_date
(
paratition p20060101 less than to_date('20060101','yyyymmdd'),
paratition p20060102 less than to_date('20060102','yyyymmdd'),
paratition p20060103 less than to_date('20060103','yyyymmdd'),
paratition p20060104 less than to_date('20060104','yyyymmdd'),
.....
)如果没有索引的话很简单 清空或删除40天前的一个分区
alter table info_call_day truncate paratition p20060101;
即可或者 alter table info_call_day drop paratition p20060101;如果有索引,必须对每个索引进行重建
alter index idx_info_call_day rebuild ; 否则索引不可用。