ここではOracleのテーブルの情報を確認するSQL文について紹介します。

テーブルの一覧を取得する

ユーザーがアクセスできるテーブルを取得する

現行のユーザーがアクセスできるテーブルを取得するには、「ALL_TABLES」を参照します。

SELECT * FROM ALL_TABLES ORDER BY OWNER, TABLE_NAME;

ALL_TABLESで取得できる主な情報は以下の通りです。

列名説明
OWNER表の所有者
TABLE_NAME表の名前
TABLESPACE_NAME表領域の名前
INITIAL_EXTENT初期エクステントのサイズ(バイト)
NEXT_EXTENTセカンダリ・エクステントのサイズ(バイト)
MIN_EXTENTSセグメント内で使用できるエクステントの最小数
MAX_EXTENTSセグメント内で使用できるエクステントの最大数
PCT_INCREASEエクステント・サイズの増加の割合
NUM_ROWS表内の行数
AVG_ROW_LEN表内の行の平均の長さ(バイト)


データベース内のテーブルを取得する

データベース内のテーブルを取得するには、「DBA_TABLES」を参照します。

SELECT * FROM DBA_TABLES ORDER BY OWNER, TABLE_NAME;

DBA_TABLESで取得できる情報は、ALL_TABLESと同じです。


ユーザーが所有するテーブルを取得する

現行のユーザーが所有するテーブルを取得するには、「USER_TABLES」を参照します。

SELECT * FROM USER_TABLES ORDER BY TABLE_NAME;

USER_TABLESで取得できる情報はORDER列を除き、ALL_TABLESと同じです。


以上、Oracleのテーブルの情報を確認するSQL文について解説しました。