Oracle 表分割槽 子分割槽

2021-09-26 07:29:06 字數 2331 閱讀 9161

create table  temp_table

(id varchar2(32) default sys_guid() not null,

datetime date,

filepath varchar2(500 byte),

filestate char(1 byte),

areacode varchar2(20 byte),

fancode varchar2(20 byte)

)partition by range(datetime) interval(numtoyminterval(1,'year'))

subpartition by list(areacode)

subpartition template

(subpartition part_0001 values ('0001') tablespace mx,

subpartition part_0002 values ('0002') tablespace mx,

subpartition part_0003 values ('0004') tablespace mx,

subpartition part_0004 values ('0005') tablespace mx,

subpartition part_0005 values ('0006') tablespace mx,

subpartition part_0006 values ('0007') tablespace mx,

subpartition part_0007 values ('0008') tablespace mx,

subpartition part_0008 values ('0009') tablespace mx,

subpartition part_0012 values ('0012') tablespace mx,

subpartition part_0018 values ('0018') tablespace mx,

subpartition part_0019 values ('0019') tablespace mx,

subpartition part_0020 values ('0020') tablespace mx,

subpartition part_0021 values ('0021') tablespace mx,

subpartition part_0022 values ('0022') tablespace mx,

subpartition part_0023 values ('0023') tablespace mx,

subpartition p_other values (default))(

partition sp1 values less than (to_date('2019-08-01', 'yyyy-mm-dd')) tablespace mx );

–建立區域性字首索引;分割槽鍵作為索引定義的第一列

create index local_prefixed_index on fan_temp (fcode) local;

–建立區域性非字首索引;分割槽鍵未作為索引定義的第一列

create index local_nonprefixed_index on fan_temp (fcode) local;

報的錯誤是:ora-00907:錯誤是右括號;

說明:partition by range(substr(focde, 0,6))不可以用函式;如果確定要這樣做,要新增加乙個欄位了,把這個欄位的值通過(substr(fcode, 0,6)) 來增加進去(areacode),這樣就可以利用這個欄位來實現分割槽了;

查詢表分割槽資訊:

select * from user_tab_partitions a where

a.table_name=upper(『temp_table』);//查詢temp_table下的的分割槽資訊;

select * from user_tab_subpartitions a where a.table_name=upper(『temp_table』);查詢temp_table下的的子分割槽資訊;

查詢表分割槽資料資訊:

select * from temp_table partition(sp1);//查詢表分割槽名為「sp1」的資料資訊;

select * from temp_table subpartition(sp1_part_0006);//查詢子分割槽名為「sp1_part_00061」的資料資訊;

設定oracle分割槽表的子分割槽模板

在將某個分割槽表刪掉並重建之後發現乙個問題,就是現在新建分割槽之後,自動建立的子分割槽格式與以前不同。以前正常情況下自動生成的子分割槽格式如下 重建表之後自動生成的子分割槽格式如下 我們可以通過修改表屬性更改子分割槽模板,解決此問題 alter table test set subpartition...

Oracle 表分割槽 復合分割槽

oracle表分割槽 範圍分割槽 oracle.表分割槽 雜湊分割槽 oracle.表分割槽 列表分割槽 oracle.表分割槽 復合分割槽 oracle表分割槽 操縱已分割槽的表 範圍分割槽與雜湊分割槽或列表分割槽的組合 語法 partition by range column name1 sub...

oracle表分割槽設計 ORACLE 分割槽表的設計

分割槽表的概念 分割槽致力於解決支援極大表和索引的關鍵問題。它採用他們分解成較小和易於管理的稱為分割槽的片 piece 的方法。一旦分割槽被定義,sql語句就可以訪問的操作某乙個分割槽而不是整個表,因而提高管理的效率。分割槽對於資料倉儲應用程式非常有效,因為他們常常儲存和分析巨量的歷史資料。分割槽表...