为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8_20230105_x86_kylin10_64.iso
【操作系统】:4.19.90-24.4.v2101.ky10.x86_64
【CPU】: aarch64
【问题描述】:查询当前模式下的超大表,查看执行计划代价超大。如何优化
SELECT /+ PARALLEL(8)*/ A.OWNER AS "模式",
A.SEGMENT_NAME AS "表名",
A.BYTES/1024/1024 AS "大小(M)"
FROM DBA_SEGMENTS A
WHERE A.OWNER = 'TEST'
ORDER BY A.BYTES/1024/1024 desc;
试下这个
select name, round(table_used_pages(sf_get_schema_name_by_id(schid),name) * page / 1024 /1024.0,2) as "实际大小(mb)" ,round(table_used_space(sf_get_schema_name_by_id(schid),name) * page / 1024 /1024.0,2) as "占用表空间大小(mb)" from sysobjects where sf_get_schema_name_by_id(schid) = 'TEST' and subtype$='UTAB';