【ORACLE】パーティションテーブルの一覧・件数・設定内容を確認するSQL


ORACLEでパーティションテーブルの一覧や設定内容を確認する方法を紹介します。

パーティションテーブルの一覧

パーティションテーブルの一覧は、データディクショナリビューのALL_TABLESを参照することで確認することが出来ます。

◆実行するSQL

select
    OWNER --テーブルの所有者
    ,TABLE_NAME --テーブル名
    ,TABLESPACE_NAME --表領域名
    ,PARTITIONED --テーブルがパーティションされているかどうか YES or NO
from
    ALL_TABLES a
where
    PARTITIONED = 'YES'
order by
    TABLE_NAME
;

パーティションテーブルの設定内容

パーティションテーブルの設定内容は、データディクショナリビューのALL_TAB_PARTITIONSを参照することで確認することが出来ます。

◆実行するSQL

select
    TABLE_OWNER --表の所有者
    ,TABLE_NAME --表の名前
    ,COMPOSITE --コンポジット・パーティションかどうか
    ,PARTITION_NAME --パーティション名
    ,HIGH_VALUE --境界値
    ,PARTITION_POSITION --パーティションの位置
    ,COMPRESSION --圧縮設定
    ,NUM_ROWS --データ件数
from
    ALL_TAB_PARTITIONS
order by
    TABLE_NAME
    ,PARTITION_NAME
;

パーティションごとの件数

パーティションごとのレコード件数は、データディクショナリビューのALL_TAB_PARTITIONSを参照することで確認することが出来ます。

◆実行するSQL

select
    TABLE_OWNER --表の所有者
    ,TABLE_NAME --表の名前
    ,COMPOSITE --コンポジット・パーティションかどうか
    ,PARTITION_NAME --パーティション名
    ,HIGH_VALUE --境界値
    ,PARTITION_POSITION --パーティションの位置
    ,COMPRESSION --圧縮設定
    ,NUM_ROWS --データ件数
from
    ALL_TAB_PARTITIONS
order by
    TABLE_NAME
    ,PARTITI
;

この他にも便利なSQLがあるのでぜひ使ってみてください。

【SQL】スキーマ(ユーザ)の一覧を確認する方法
【SQL】テーブルの一覧を確認する方法
【SQL】データ・レコード件数の多いテーブルを確認する方法
【SQL】パーティションテーブルの一覧を確認する方法
【SQL】表のパーティションごとの件数を確認する方法