Most efficient report of number of records in all tables?

Поиск
Список
Период
Сортировка
От D. Dante Lorenso
Тема Most efficient report of number of records in all tables?
Дата
Msg-id 45E35D17.3040205@lorenso.com
обсуждение исходный текст
Ответы preventing ALTER TABLE RENAME from changing view definitions?  ("George Pavlov" <gpavlov@mynewplace.com>)
Re: Most efficient report of number of records in all tables?  ("Dann Corbit" <DCorbit@connx.com>)
Список pgsql-general
All,

I can find the names of all tables in the database with this query:

    SELECT table_name
    FROM information_schema.tables
    WHERE table_type = 'BASE TABLE'
    AND table_schema NOT IN ('pg_catalog', 'information_schema')
    ORDER BY table_name ASC;


Then, in code, I can loop through all the table names and run the
following query:

    SELECT COUNT(*) AS result
    FROM $table;


But, this can be slow when I have a large number of tables of some
tables have several million rows.

Is there a faster way to get this data using table statistics or
something like that?  Perhaps something in a single query?

-- Dante




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

Предыдущее
От: Tony Caduto
Дата:
Сообщение: grant on sequence and pg_restore/pg_dump problem
Следующее
От: "George Pavlov"
Дата:
Сообщение: preventing ALTER TABLE RENAME from changing view definitions?