Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Partisi Oracle berdasarkan ID dan subpartisi berdasarkan DATE dengan interval

Anda dapat membuat RANGE INTERVAL partisi pada tanggal dan kemudian LIST atau RANGE subpartisi di atasnya. Akan seperti ini:

CREATE TABLE MY_PART_TABLE
(
  CUSTOMER_ID                      NUMBER             NOT NULL,
  THE_DATE                 TIMESTAMP(0) NOT NULL,
  OTHER_COLUMNS NUMBER
)
PARTITION BY RANGE (THE_DATE) INTERVAL (INTERVAL '1' MONTH)
    SUBPARTITION BY RANGE (CUSTOMER_ID)
        SUBPARTITION TEMPLATE (
        SUBPARTITION CUSTOMER_GROUP_1 VALUES LESS THAN (10),
        SUBPARTITION CUSTOMER_GROUP_2 VALUES LESS THAN (20),
        SUBPARTITION CUSTOMER_GROUP_3 VALUES LESS THAN (30),
        SUBPARTITION CUSTOMER_GROUP_4 VALUES LESS THAN (40),
        SUBPARTITION CUSTOMER_GROUP_5 VALUES LESS THAN (MAXVALUE)
        )
(PARTITION VALUES LESS THAN ( TIMESTAMP '2015-01-01 00:00:00') );



CREATE TABLE MY_PART_TABLE
(
  CUSTOMER_ID                      NUMBER             NOT NULL,
  THE_DATE                 TIMESTAMP(0) NOT NULL,
  OTHER_COLUMNS NUMBER
)
PARTITION BY RANGE (THE_DATE) INTERVAL (INTERVAL '1' MONTH)
    SUBPARTITION BY LIST (CUSTOMER_ID)
        SUBPARTITION TEMPLATE (
        SUBPARTITION CUSTOMER_1 VALUES (1),
        SUBPARTITION CUSTOMER_2 VALUES (2),
        SUBPARTITION CUSTOMER_3_to_6 VALUES (3,4,5,6),
        SUBPARTITION CUSTOMER_7 VALUES (7)
        )
(PARTITION VALUES LESS THAN ( TIMESTAMP '2015-01-01 00:00:00') );

Catatan, untuk solusi kedua nomor (yaitu ID) pelanggan diperbaiki. Jika Anda mendapatkan pelanggan baru, Anda harus mengubah tabel dan memodifikasi TEMPLATE SUBPARTISI sesuai dengan itu.

Partisi bulanan akan dibuat secara otomatis oleh Oracle setiap kali nilai baru dimasukkan atau diperbarui.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. apa perbedaan antara kata kunci gabung dan kata kunci gabung dalam di Oracle sql?

  2. Hibernasi jenis kustom untuk menghindari 'Disebabkan oleh:java.sql.SQLException:Stream telah ditutup'

  3. Bagaimana cara mengubah Baris ke Kolom di Oracle?

  4. Bagaimana saya bisa menghubungkan ORACLE dari EXCEL dengan JDBC?

  5. Menghubungkan ke Oracle Database melalui C#?