要查看Oracle Statistics的详细信息,您可以使用DBMS_STATS包中的视图和过程
-
登录到Oracle数据库: 使用命令行工具(如SQL*Plus)或图形界面工具(如Oracle SQL Developer、Toad等)连接到您的Oracle数据库。
-
切换到DBA角色:
CONNECT / AS SYSDBA;
-
查看表统计信息: 使用
USER_TABLES
视图查看当前用户拥有的表的统计信息:SELECT table_name, num_rows, blocks FROM user_tables ORDER BY table_name;
使用
DBA_TABLES
视图查看所有用户的表的统计信息:SELECT owner, table_name, num_rows, blocks FROM dba_tables ORDER BY owner, table_name;
-
查看列统计信息: 使用
USER_TAB_COLUMNS
视图查看当前用户拥有的表的列统计信息:SELECT table_name, column_name, num_distinct, low_value, high_value FROM user_tab_columns WHERE table_name = 'YOUR_TABLE_NAME';
使用
DBA_TAB_COLUMNS
视图查看所有用户的表的列统计信息:SELECT owner, table_name, column_name, num_distinct, low_value, high_value FROM dba_tab_columns WHERE owner = 'YOUR_SCHEMA_NAME' AND table_name = 'YOUR_TABLE_NAME';
-
查看索引统计信息: 使用
USER_INDEXES
视图查看当前用户拥有的索引的统计信息:SELECT index_name, table_name, uniqueness, num_rows, leaf_blocks FROM user_indexes ORDER BY index_name;
使用
DBA_INDEXES
视图查看所有用户的索引的统计信息:SELECT owner, index_name, table_name, uniqueness, num_rows, leaf_blocks FROM dba_indexes ORDER BY owner, index_name;
-
查看分区表统计信息: 使用
USER_PART_TABLES
视图查看当前用户拥有的分区表的统计信息:SELECT table_name, partitioning_type, num_partitions FROM user_part_tables ORDER BY table_name;
使用
DBA_PART_TABLES
视图查看所有用户的分区表的统计信息:SELECT owner, table_name, partitioning_type, num_partitions FROM dba_part_tables ORDER BY owner, table_name;
-
查看分区统计信息: 使用
USER_TAB_PARTITIONS
视图查看当前用户拥有的分区的统计信息:SELECT table_name, partition_name, num_rows, blocks FROM user_tab_partitions WHERE table_name = 'YOUR_TABLE_NAME';
使用
DBA_TAB_PARTITIONS
视图查看所有用户的分区的统计信息:SELECT owner, table_name, partition_name, num_rows, blocks FROM dba_tab_partitions WHERE owner = 'YOUR_SCHEMA_NAME' AND table_name = 'YOUR_TABLE_NAME';
请注意,将YOUR_TABLE_NAME
和YOUR_SCHEMA_NAME
替换为实际的表名和模式名。这些查询将返回与表、列、索引和分区相关的统计信息。