PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Indice per ottenere il conteggio delle righe della tabella PostgreSQL di sola lettura (immutabile)?

Sfortunatamente, in postgresql SELECT COUNT(*) è spesso più lento di MySQL a cui spesso viene paragonato.

Puoi utilizzare la seguente query come alternativa a SELECT COUNT(*).

 SELECT reltuples FROM pg_class WHERE relname = 'mytable';

Questo non è sempre aggiornato al 100%, ma per le tabelle immutabili sarà sempre accurato. E istantaneo. Per tavoli molto grandi l'errore percentuale sarà molto piccolo e quindi vale la pena risparmiare molto tempo.

Se è importante e la tabella non contiene valori null, puoi utilizzare

 SELECT COUNT(primary_key_column) FROM table

e questo sarà significativamente più veloce di SELECT COUNT(*)