range,list,hash partitioning tables 初識
Partitioning table 初識,區分(堆表與分割槽表、分割槽特性)
1、create range partition table
( prod_id NUMBER(6)
, cust_id NUMBER
, time_id DATE
, channel_id CHAR(1)
, promo_id NUMBER(6)
, quantity_sold NUMBER(3)
, amount_sold NUMBER(10,2)
)
PARTITION BY RANGE (time_id)
(PARTITION SALES_1998 VALUES LESS THAN (TO_DATE('01-JAN-1999','DD-MON-YYYY')),
PARTITION SALES_1999 VALUES LESS THAN (TO_DATE('01-JAN-2000','DD-MON-YYYY')),
PARTITION SALES_2000 VALUES LESS THAN (TO_DATE('01-JAN-2001','DD-MON-YYYY')),
PARTITION SALES_2001 VALUES LESS THAN (MAXVALUE)
);
doudou@TEST> select table_name,status,partitioned from user_tables;
TABLE_NAME STATUS PARTITIONED
------------------------------ ------------------------------ ------------------------------
TIME_RANGE_SALES VALID YES
doudou@TEST> select partition_name,partition_position,high_value from
2 user_tab_partitions where table_name='TIME_RANGE_SALES';
PARTITION_NAME PARTITION_POSITION HIGH_VALUE
-------------------- ------------------ --------------------------------------------------
SALES_1998 1 TO_DATE(' 1999-01-01 00:00:00', 'SYYYY-MM-DD HH24:
MI:SS', 'NLS_CALENDAR=GREGORIAN')
SALES_1999 2 TO_DATE(' 2000-01-01 00:00:00', 'SYYYY-MM-DD HH24:
MI:SS', 'NLS_CALENDAR=GREGORIAN')
SALES_2000 3 TO_DATE(' 2001-01-01 00:00:00', 'SYYYY-MM-DD HH24:
MI:SS', 'NLS_CALENDAR=GREGORIAN')
SALES_2001 4 MAXVALUE
2、 create list partition table
CREATE TABLE list_sales
( prod_id NUMBER(6)
, cust_id NUMBER
, time_id DATE
, channel_id CHAR(1)
, promo_id NUMBER(6)
, quantity_sold NUMBER(3)
, amount_sold NUMBER(10,2)
)
PARTITION BY LIST (channel_id)
(PARTITION even_channels VALUES (2,4),
PARTITION odd_channels VALUES (3,9)
);
doudou@TEST> select table_name,status,partitioned from user_tables where table_name='LIST_SALES';
TABLE_NAME STATUS PARTITIONED
-------------------- ------------------------------ ------------------------------
LIST_SALES VALID YES
doudou@TEST> select partition_name,partition_position,high_value from
2 user_tab_partitions where table_name='LIST_SALES';
PARTITION_NAME PARTITION_POSITION HIGH_VALUE
-------------------- ------------------ --------------------------------------------------
EVEN_CHANNELS 1 '2', '4'
ODD_CHANNELS 2 '3', '9'
3、 create hash partition table
CREATE TABLE hash_sales
( prod_id NUMBER(6)
, cust_id NUMBER
, time_id DATE
, channel_id CHAR(1)
, promo_id NUMBER(6)
, quantity_sold NUMBER(3)
, amount_sold NUMBER(10,2)
)
PARTITION BY HASH (prod_id)
PARTITIONS 2;
doudou@TEST> select table_name,status,partitioned from user_tables where table_name='HASH_SALES';
TABLE_NAME STATUS PARTITIONED
-------------------- ------------------------------ ------------------------------
HASH_SALES VALID YES
doudou@TEST> select partition_name,partition_position,high_value from
2 user_tab_partitions where table_name='HASH_SALES';
PARTITION_NAME PARTITION_POSITION HIGH_VALUE
-------------------- ------------------ --------------------------------------------------
SYS_P21 1
SYS_P22 2
4、 create heap-organized table “DOUDOU”
doudou@TEST> select table_name,status,partitioned from user_tables where table_name='DOUDOU';
TABLE_NAME STATUS PARTITIONED
-------------------- ------------------------------ ------------------------------
DOUDOU VALID NO
總結:
1、 如何區別分割槽表與堆組織表?
可以通過檢視user_tables中的列PARTITIONED 值 YES or NO 來判斷。
2、 如何區別分割槽表特性?
可以通過檢視user_tab_partitions中的列HIGH_VALUE值判斷。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26442936/viewspace-752766/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- What are number-of-subpartitions of composite range-hash partitioning tables
- LIST Partitioning
- unsupported operand type(s) for +: ‘range‘ and ‘list‘
- 【原創】Oracle之range,hash,list分割槽現實應用及優缺點彙總Oracle
- 輕鬆初探 Python 篇(四)—list tuple range 知識彙總Python
- ORA-14257: cannot move partition other than a Range or Hash partition
- python爬蟲 -IndexError: list index out of range報錯Python爬蟲IndexError
- 【12.2】Oracle 12C R2新特性-外部表支援分割槽了(Partitioning External Tables)Oracle
- Overview of PartitioningView
- Benefits of Partitioning
- Partitioning Strategies
- Oracle PartitioningOracle
- 關於range的一個知識點
- 初識MybatisMyBatis
- 初識 DockerDocker
- rocketmq初識MQ
- 初識 reduxRedux
- 初識GitGit
- Express初識Express
- Kafka 初識Kafka
- 初識 “HTML”HTML
- 初識GolangGolang
- 初識dockerDocker
- 初識PostgreSQLSQL
- 初識RedisRedis
- 初識GOGo
- 初識promisePromise
- 初識VueVue
- 初識JSJS
- 初識jQueryjQuery
- 初識JavaScriptJavaScript
- 初識WebAssemblyWeb
- 初識機器學習機器學習
- 初識JVMJVM
- 初識HaphoopOOP
- 初識JavaWEBJavaWeb
- 初識HTMLHTML
- 初識HTTPHTTP