tecnologia | consultoria | banco de dados

Oracle - Criar tabela particionada

CREATE TABLE tb_clientes
(
id_cliente NUMBER,
nm_cliente VARCHAR2(200),
ano_mes_cadastro VARCHAR2(6) DEFAULT TO_CHAR(SYSDATE,'RRRRMM')
)
PARTITION BY RANGE (ano_mes_cadastro)
(
PARTITION P_198612 VALUES LESS THAN (198701)
);

Criar partição baseado em data:

CREATE TABLE tb_teste
(
data DATE
)
PARTITION BY RANGE(data)
(
PARTITION P_201312 VALUES LESS THAN (TO_DATE('01/01/2014','dd/mm/yyyy'))
);

Criar tabela com particionamento automático:

CREATE TABLE POS_DATA
(
START_DATE DATE,
STORE_ID NUMBER,
INVENTORY_ID NUMBER(6),
QTY_SOLD NUMBER(3)
)
PARTITION BY RANGE (START_DATE)
INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
(
PARTITION POS_DATA_P2 VALUES LESS THAN (TO_DATE('1-07-2007', 'DD-MM-YYYY')),
PARTITION POS_DATA_P3 VALUES LESS THAN (TO_DATE('1-08-2007', 'DD-MM-YYYY'))
);

Adicionar uma nova partição em uma tabela já particionada:
--SEM COMPRESSÃO
ALTER TABLE tb_clientes ADD PARTITION P_198701 VALUES LESS THAN (198702) NOCOMPRESS;

--COM COMPRESSÃO
ALTER TABLE tb_clientes ADD PARTITION P_198701 VALUES LESS THAN (198702) COMPRESS FOR QUERY HIGH;

Publicações relacionadas:
- Oracle - Criar tabela sub-particionada;
- Oracle - Criar tabela com compressão.
Data publicação: 22:09 11/11/2015
Perfil
Olá jovem Padawan, seja bem vindo! Este site foi criado com o intuito de compartilhar um pouco de conhecimento de Tecnologia da Informação e Business Intelligence.

Linkedin  Youtube

"Meus filhos terão computadores, sim, mas antes terão livros. Sem livros, sem leitura, os nossos filhos serão incapazes de escrever - inclusive a sua própria história." (Bill Gates)


Leandro Sacramento, Todos os direitos reservados - 2012 - 2020