oracle表分割槽
自從oracle8i 開始可以把一個表分割為多個小的部分,這樣可以對oracle的效能最佳化帶來很大的好處~
例如:改善表的查詢效能,更加容易管理表資料,備份和恢復操作更方便
在oracle 中分割槽表 分為好幾種的(範圍分割槽,雜湊分割槽,子分割槽,列表分割槽,索引分割槽)下面我們來慢慢介紹
現在我們來建立一個[範圍分割槽]
create table RangeTable(
id int primary key,
name varchar(20),
grade int
)
partition by rang(grade)
(
partition part1 values less then(50) tablespace Part1_tb,
partition part2 values less then(MAXVALUE) tablespace Part2_tb
);
如果grade的值小於50的話 就把記錄放到名為part1的分割槽當中,part1分割槽將被儲存在Part1_tb表空間中
其他的就放在part2中 MAXVALUE是oracle的關鍵字 表示最大值
[雜湊分割槽]
create table HashTable(
id int primary key,
name varchar(20),
grade int
)
/*有兩種方式,1就是指定分割槽數目和所使用的表空間,2指定以命名的分割槽*/
partition by hash(grade)
partitions 10 -- 指定分割槽的數目
store in(Part1_tb,Part2_tb,Part3_tb) --如果指定的分割槽數目比表空間多,分割槽會以迴圈方式分配到表空間
/*------------------------------------*/
partition by rang(grade)--這種方式就是 指定以命名的分割槽
(
partition part1 tablespace Part1_tb,
partition part2 tablespace Part2_tb
);
[子分割槽]即是分割槽的分割槽
create table ChildTable(
id int primary key,
name varchar(20),
grade int
)
partition by rang(grade)
subpartition by hash(grade)
partitions 5
(
partition part1 values less then(30) tablespace Part1_tb,
partition part2 values less then(60) tablespace Part2_tb,
partition part3 values less then(MAXVALUE) tablespace Part3_tb
);
[列表分割槽]告訴oracle所有可能的值
create table ListTable(
id int primary key,
name varchar(20),
area varchar(10)
)
partition by list(area)
(
partition part1 values('guangdong','beijing') tablespace Part1_tb,
partition part2 values('shanghai','nanjing') tablespace Part2_tb
);
[索引分割槽]索引也可以按照和表進行分割槽時使用的相同的值範圍來分割槽
create index IndexTable_index
on IndexTable(name)
local
(
partition part1 tablespace Part1_tb,
partition part2 tablespace Part2_tb
)
--local 告訴oracle表 IndexTable的每一個分割槽建立一個獨立的索引
create index IndexTable_index
on IndexTable(name)
global;
--global為全域性索引 全域性索引可以包含多個分割槽的值 區域性索引比全域性索引容易管理,而全域性索引比較快
注意:不能為雜湊分割槽 或者 子分割槽建立全域性索引
查詢某一個表分割槽
select * from table partition(part1);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18921899/viewspace-1017325/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle分割槽表和分割槽表exchangeOracle
- Oracle分割槽表及分割槽索引Oracle索引
- oracle分割槽表和非分割槽表exchangeOracle
- Oracle 表分割槽Oracle
- oracle分割槽表Oracle
- Oracle 分割槽表Oracle
- 簡單ORACLE分割槽表、分割槽索引Oracle索引
- Oracle 建立分割槽表Oracle
- ORACLE分割槽表管理Oracle
- [oracle] expdp 匯出分割槽表的分割槽Oracle
- Oracle分割槽表基礎運維-06分割槽表索引Oracle運維索引
- oracle 分割槽表move和包含分割槽表的lob moveOracle
- 深入學習Oracle分割槽表及分割槽索引Oracle索引
- 全面認識oracle分割槽表及分割槽索引Oracle索引
- Oracle分割槽表基礎運維-07增加分割槽(3列表分割槽)Oracle運維
- ORACLE分割槽表梳理系列Oracle
- Oracle分割槽表遷移Oracle
- oracle 分割槽表詳解Oracle
- Oracle分割槽表介紹Oracle
- oracle表分割槽詳解Oracle
- oracle分割槽表詳解Oracle
- Oracle 分割槽表的建立Oracle
- Oracle分割槽表(Partition Table)Oracle
- oracle 分割槽表總結Oracle
- Oracle 分割槽表 總結Oracle
- oracle表分割槽自我理解Oracle
- Oracle分割槽表的使用Oracle
- Oracle中重建表分割槽Oracle
- ORACLE分割槽表管理[轉]Oracle
- Oracle 表分割槽詳解Oracle
- Oracle分割槽表的管理Oracle
- Oracle分割槽表基礎運維-01分割槽表分類Oracle運維
- Oracle分割槽表基礎運維-04列表分割槽Oracle運維
- oracle 普通表-分割槽表改造流程Oracle
- oracle將表配置為分割槽表Oracle
- [引用分割槽表]Oracle 11g新特性之引用分割槽表Oracle
- Oracle帶區域性分割槽索引的分割槽表刪除舊分割槽新增新分割槽Oracle索引
- Oracle分割槽表基礎運維-07增加分割槽(2 HASH分割槽)Oracle運維