Oracle DB 統計情報
#Fleeting_Notes
Oracle DB 統計情報
code:sql
-- テーブル統計情報
SELECT owner, table_name, num_rows, blocks, empty_blocks, avg_row_len, sample_size, last_analyzed, stale_stats
FROM dba_tab_statistics
WHERE owner = 'SCOTT'
AND table_name = 'EMPLOYEES';
-- カラム統計情報
SELECT owner, table_name, column_name, num_distinct, num_nulls, density, low_value, high_value, histogram, last_analyzed
FROM dba_tab_col_statistics
WHERE owner = 'SCOTT'
AND table_name = 'EMPLOYEES'
ORDER BY column_name;
以下のイベントを使用すると、トレースファイルに統計情報を出力させる事が可能。
1.イベントの開始:
code:sql
alter session set events '10053 context forever, level 1'
2.統計情報を取得したい表がFROM句に含まれたSQLを実行
code:sql
select e.empno, e.ename, d.dname
from emp e, dept d
where e.deptno=d.deptno
3.イベントの終了:
code:sql
alter session set events '10053 trace name context off'
確認用
Q. Oracle DB 統計情報の調べ方
参考
第73回 夜な夜な!なにわオラクル塾
メモ
Oracleの統計情報にまつわる頻出FAQ~概要、確認、収集・取得
調査用
/pogi-log/Google.icon Oracle DB 統計情報(日)
/pogi-log/Google.icon Oracle DB statistics(英)