No, los índices parciales solo admiten un subconjunto de los operadores en el filtro utilizado. Los únicos operadores admitidos son:$AND
(solo en el nivel superior), $EQ
, $LT
, $LTE
, $GT
, $GTE
, $EXISTS
y el TYPE_OPERATOR
.
Eso deja fuera, por ejemplo, $NOT
, $REGEX
, $OR
, etc.
Puede ver eso en la fuente de MongoDB aquí .
También existen algunas limitaciones generales en los índices parciales:
_id
los índices no pueden ser índices parciales.- Los índices dispersos no pueden ser índices parciales.
- Los índices de claves fragmentadas no pueden ser índices parciales.
- Los índices parciales no son compatibles con versiones anteriores a la 3.2.