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

PostgreSQL:crear índice para columna booleana

PostgreSQL usará un índice solo si cree que será más barato de esa manera. Un índice en un boolean La columna, que solo puede tomar dos valores posibles, casi nunca se usará, porque es más barato leer secuencialmente toda la tabla que usar E/S aleatorias en el índice y la tabla si se tiene que recuperar un alto porcentaje de la tabla. .

Un índice en un boolean la columna solo es útil

  1. en escenarios de almacenamiento de datos, donde se puede combinar con otros índices a través de un análisis de índice de mapa de bits .

  2. si solo una pequeña fracción de la tabla tiene el valor TRUE (o FALSE para esa materia). En este caso, es mejor crear un índice parcial Me gusta

    CREATE INDEX ON mytab((1)) WHERE boolcolumn;