db2怎么列出当前数据库下所有表占用空间的大小
2个回答
展开全部
ADMINTABINFO administrative view and ADMIN_GET_TAB_INFO table function - Retrieve size and state information for tables
Example 1: Retrieve size and state information for all tables
SELECT * FROM SYSIBMADM.ADMINTABINFO
Example 2: Retrieve size and state information for the table DBUSER1.EMPLOYEE.
SELECT * FROM TABLE (SYSPROC.ADMIN_GET_TAB_INFO('DBUSER1', 'EMPLOYEE'))
AS T
以上参考 http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0022024.htm
DATA_OBJECT_L_SIZE DATA_OBJECT_P_SIZE这两个字段值为你需要的信息。
第一个示例查询时可以带上模式名或者表名来去除系统表的信息
Example 1: Retrieve size and state information for all tables
SELECT * FROM SYSIBMADM.ADMINTABINFO
Example 2: Retrieve size and state information for the table DBUSER1.EMPLOYEE.
SELECT * FROM TABLE (SYSPROC.ADMIN_GET_TAB_INFO('DBUSER1', 'EMPLOYEE'))
AS T
以上参考 http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0022024.htm
DATA_OBJECT_L_SIZE DATA_OBJECT_P_SIZE这两个字段值为你需要的信息。
第一个示例查询时可以带上模式名或者表名来去除系统表的信息
展开全部
查询出当前用户的表所占用的空间大小,并按大小进行降序排列:
Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name order by Sum(bytes)/1024/1024 desc
查询出系统表空间的大小,并按大小进行降序排列(需要SYSDBA的权限):
Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name order by Sum(bytes)/1024/1024 desc
查看某个Table的大小可以在控制中心中用图形界面查看。
SQL Server中:
执行统计并查看指定表名的表大小:
exec sp_spaceused '表名',
true;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询