Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Phân vùng động bảng Oracle

Tạo bảng với phân vùng theo khoảng thời gian:

CREATE TABLE TEJAS_CARD_REPORT
(
    "INSERT_DATETIME" TIMESTAMP (6) NOT NULL ENABLE, 
    "NAME"         VARCHAR2(100 BYTE), 
    "IPADDRESS" VARCHAR2(100 BYTE), 
    "PRODUCTCODE" VARCHAR2(100 BYTE), 
    "LCTNAME" VARCHAR2(100 BYTE), 
    "CARDTYPELABEL" VARCHAR2(100 BYTE), 
    "SOFTWAREVERSION" VARCHAR2(100 BYTE)
) partition by range(insert_datetime) interval (interval '15' minute)
(
    partition initial_partition values less than (date '2000-01-01')
);

Các phân vùng được tạo động khi dữ liệu được chèn vào.

insert into tejas_card_report(insert_datetime) values (timestamp '2000-01-01 00:14:00');
insert into tejas_card_report(insert_datetime) values (timestamp '2000-01-01 00:29:00');
insert into tejas_card_report(insert_datetime) values (timestamp '2000-10-11 00:00:00');

SQL> select partition_name, high_value from dba_tab_partitions where table_name = 'TEJAS_CARD_REPORT';

PARTITION_NAME       HIGH_VALUE
-------------------- --------------------------------------------------------------------------------
SYS_P21516           TIMESTAMP' 2000-10-11 00:15:00'
SYS_P21515           TIMESTAMP' 2000-01-01 00:30:00'
SYS_P21514           TIMESTAMP' 2000-01-01 00:15:00'
INITIAL_PARTITION    TIMESTAMP' 2000-01-01 00:00:00'

Trên một ghi chú không liên quan, hãy tránh TABLESPACE "SYSTEM" . Bạn hầu như không bao giờ muốn lưu trữ bất kỳ dữ liệu người dùng hoặc ứng dụng nào trong vùng bảng HỆ THỐNG.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phân trang với Oracle và máy chủ sql và phương pháp phân trang chung

  2. Cập nhật nhiều cột trong câu lệnh MERGE ORACLE

  3. ví dụ về cú pháp nối oracle

  4. Truy vấn SQL Oracle:Truy xuất các giá trị mới nhất cho mỗi nhóm dựa trên thời gian

  5. chọn N hàng trên cùng từ một bảng