"Est-il possible avec PostgreSQL d'obtenir rapidement une estimation du nombre de lignes d'une table comme avec Oracle via la colonne num_rows de dba_tables ?"
Réponse :
Oui, par exemple via les données issues de la collecte de statistiques.
Exemple :
Code : Tout sélectionner
select version();
version
---------------------------------------------------------------------------------------------------------------
PostgreSQL 11.1 (Debian 11.1-1.pgdg+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.2.0-9) 8.2.0, 64-bit
(1 ligne)
select count(1) from postgres.lancers;
count
--------
100000
(1 ligne)
select n_live_tup from pg_stat_all_tables where schemaname = 'postgres' and relname = 'lancers';
n_live_tup
------------
100000
(1 ligne)