sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Índice para obtener el recuento de filas de la tabla PostgreSQL de solo lectura (inmutable)?

Desafortunadamente, en postgresql SELECT COUNT(*) es a menudo más lento que mysql con el que a menudo se compara.

Puede utilizar la siguiente consulta como alternativa a SELECT COUNT(*).

 SELECT reltuples FROM pg_class WHERE relname = 'mytable';

Esto no siempre está 100 % actualizado, pero para las tablas inmutables siempre será preciso. e instantáneo. Para tablas muy grandes, el porcentaje de error será muy pequeño y, por lo tanto, valdrá la pena el enorme ahorro de tiempo.

Si importa y la tabla no contiene valores nulos, puede usar

 SELECT COUNT(primary_key_column) FROM table

y esto será significativamente más rápido que SELECT COUNT(*)