Oracle データベースでテーブルの作成日・最終更新日・含まれる行数・コメントを一覧表示する
Oracle データベースで各テーブルの作成日・最終更新日・含まれる行数・コメントを一覧表示する SQL です。SELECT
TAB.OWNER AS "スキーマ名",
TAB.TABLE_NAME AS "テーブル名",
TO_CHAR(OBJ.CREATED, 'YYYY-MM-DD') AS "テーブル作成日",
TO_CHAR(OBJ.LAST_DDL_TIME, 'YYYY-MM-DD') AS "テーブル最終変更日",
TAB.NUM_ROWS AS "テーブルに含まれるレコード行数",
TO_CHAR(TAB.LAST_ANALYZED, 'YYYY-MM-DD') AS "最終テーブル解析日(ANALYZE)",
COMM.COMMENTS AS "コメント"
FROM ALL_TABLES TAB
JOIN ALL_OBJECTS OBJ ON (OBJ.OWNER = TAB.OWNER AND OBJ.OBJECT_NAME = TAB.TABLE_NAME)
LEFT OUTER JOIN ALL_TAB_COMMENTS COMM ON (TAB.TABLE_NAME = COMM.TABLE_NAME AND TAB.OWNER = COMM.OWNER)
WHERE TAB.OWNER NOT IN (
'SYS',
'SYSTEM',
'CTXSYS',
'DBSNMP',
'EXFSYS',
'LBACSYS',
'MDSYS',
'MGMT_VIEW',
'OLAPSYS',
'OWBSYS',
'ORDPLUGINS',
'ORDSYS',
'OUTLN',
'SYSMAN',
'WMSYS',
'DMSYS',
'XDB',
'TSMSYS'
)
ORDER BY
TAB.OWNER,
TAB.TABLE_NAME
;
上記 SQL を実行すると次のような結果が得られます。ここでは SCOTT ユーザーのテーブル一覧のみ表示しています。

