Re: Table sizes

Поиск
Список
Период
Сортировка
От luis.roberto@siscobra.com.br
Тема Re: Table sizes
Дата
Msg-id 56108176.54473966.1601474072988.JavaMail.zimbra@siscobra.com.br
обсуждение исходный текст
Ответ на Re: Table sizes  (Charles Clavadetscher <clavadetscher@swisspug.org>)
Ответы Re: Table sizes  (Adrian Klaver <adrian.klaver@aklaver.com>)
Re: Table sizes  (Charles Clavadetscher <clavadetscher@swisspug.org>)
Список pgsql-general
De: "Charles Clavadetscher" <clavadetscher@swisspug.org>
Para: "luis.roberto" <luis.roberto@siscobra.com.br>
Cc: "pgsql-general" <pgsql-general@lists.postgresql.org>
Enviadas: Quarta-feira, 30 de setembro de 2020 10:46:39
Assunto: Re: Table sizes

Hello

On 2020-09-30 14:11, luis.roberto@siscobra.com.br wrote:
> Hi!
>
> I'm trying to use this query to get table sizes, however I'm getting a
> strange error:
>
> select tablename,pg_relation_size(tablename::text)
>   from pg_tables;
>
> In PG 13:
>
> SQL Error [42P01]: ERROR: relation "sql_implementation_info" does not
> exist
>
> In PG 12:
>
> SQL Error [42P01]: ERROR: relation "sql_parts" does not exist

Try like this:

select schemaname,
        tablename,
        pg_relation_size((schemaname || '.' || '"' || tablename ||
'"')::regclass)
from pg_tables;

You need to schema qualify the tables. Additionally, if you happen to
have table names that have a mix of capital and non capital letters or
contain other characters that might be problematic, you need to enclose
the table name in double quotes.

Regards
Charles

--
Charles Clavadetscher
Swiss PostgreSQL Users Group
Treasurer
Spitzackerstrasse 9
CH - 8057 Zürich

http://www.swisspug.org

+---------------------------+
|     ____  ______  ___     |
|    /    )/      \/   \    |
|   (     / __    _\    )   |
|    \    (/ o)  ( o)   )   |
|     \_  (_  )   \ ) _/    |
|       \  /\_/    \)/      |
|        \/ <//|  |\\>      |
|             _|  |         |
|             \|_/          |
|                           |
|     Swiss PostgreSQL      |
|       Users Group         |
|                           |
+---------------------------+


Thanks, this worked.

I wonder though, why calling pg_relation_size('users') work (I don't need to specify the schema).

В списке pgsql-general по дате отправления:

Предыдущее
От: Charles Clavadetscher
Дата:
Сообщение: Re: Table sizes
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: Table sizes