注册
达梦模式统计信息输出方法
专栏/培训园地/ 文章详情 /

达梦模式统计信息输出方法

凌云 2024/07/08 1219 6 0
摘要

考试的时候我们会遇到要输出数据库中模式的统计信息,但是我们的数据库里边只提供了表和列的统计信息和直方图的信息输出,其包分别为:
dbms_stats.table_stats_show('TEST','EMP');
查看列的统计信息和直方图的信息:
dbms_stats.column_stats_show('TEST','EMP','NAME');
没有提供模式的统计信息数据,怎么办呢?
其实我们可以通过变通的方式来解决这个模式的统计信息的输出,就算把模式拆解为模式下边所有单表的统计信息的输出,然后汇总后就符合题目的要求了,具体如下:
首先使用SQL语句拼凑出模式下所有表的统计信息数据语句如下:
select 'dbms_stats.table_stats_show'||'('||''''||模式名||''''||','||''''||table_name||''''||')'||';' from dba_tables where owner='模式名';

结果如下:
dbms_stats.table_stats_show('TEST','EMP');
dbms_stats.table_stats_show('TEST','PROD');
dbms_stats.table_stats_show('TEST','T_HASH');

在使用spool命令对具体统计信息进行汇总:
disql sysdba/SYSDBA
spool /opt/stats.log;
dbms_stats.table_stats_show('TEST','EMP');
dbms_stats.table_stats_show('TEST','PROD');
dbms_stats.table_stats_show('TEST','T_HASH');
spool off;

输出的结果即为具体模式的统计信息集合。

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服