1

posgreSQL でテーブルのサイズを見つける必要があります。次のコマンドを使用していますが、出力として 0 が返されます。テーブルのサイズを取得する方法を教えてください。

入力:

select pg_relation_size('tableName');

出力:

pg_relation_size 

  0

(1 row)
4

2 に答える 2

0

これは古いことは知っていますが、同じ問題に遭遇しました。これは、テーブルがパーティション化されているため、技術的には実際のサイズがありません。すべてのパーティションの合計サイズを取得するには、この質問を確認してください。

または、次のような継承カタログを使用することもできます。

SELECT count(*) AS child_amount, pg_size_pretty(sum(pg_relation_size(inhrelid::regclass))) AS child_size
FROM pg_inherits 
WHERE inhparent='tableName'::regclass;
于 2021-08-30T08:37:35.877 に答える