我在Teradata中有一张表,想知道它的大小。对于Teradata中的数据库来说,同样的事情也很有趣。
我该怎么做呢?
我在Teradata中有一张表,想知道它的大小。对于Teradata中的数据库来说,同样的事情也很有趣。
我该怎么做呢?
要检查表的大小,您可以从 dbc.tablesize
进行检查。请查看下面的查询。
SELECT
A.DatabaseName
,A.tablename
,CreateTimeStamp
,CAST(SUM(CURRENTPERM) AS DECIMAL(18,2))/(1024*1024*1024) (TITLE 'Used(GB)')
FROM dbc.tablesize A,DBC.TABLES B
WHERE A.TABLENAME=B.TABLENAME
AND A.DatabaseName = B.DatabaseName
AND A.DatabaseName = 'your database name/schemaname/appname'
AND A.tablename = 'your tablename'
GROUP BY 1,2,3 ORDER BY 3 DESC;
要检查数据库大小,您可以使用dbc.diskspace
,查询将类似于以下内容:
SELECT
DatabaseName
,CAST(SUM(CurrentPerm) AS DECIMAL(18,5))/(1024*1024*1024) (TITLE 'Used(GB)')
,CAST(SUM(MaxPerm) AS DECIMAL(18,5))/(1024*1024*1024) (TITLE 'Allocated(GB)')
,CAST(SUM(MaxPerm)-SUM(CurrentPerm) AS DECIMAL(18,5))/(1024*1024*1024) (TITLE 'Free(GB)')
FROM DBC.DiskSpace
WHERE DatabaseName = 'databasename'
GROUP BY 1
ORDER BY 2 Desc;
这将为您提供数据库中已使用空间、分配空间和可用空间。
代码将整数除以十进制数并遭受截断。 将转换更改为:
CAST(SUM(CurrentPerm) AS DECIMAL(18,5)) /(1024*1024*1024) (TITLE 'Used(GB)')
给出你的意思