Nie, indeksy częściowe obsługują tylko podzbiór operatorów w używanym filtrze. Jedyne obsługiwane operatory to:$AND
(tylko na najwyższym poziomie), $EQ
, $LT
, $LTE
, $GT
, $GTE
, $EXISTS
i TYPE_OPERATOR
.
To pomija, na przykład $NOT
, $REGEX
, $OR
itp.
Możesz to zobaczyć w źródle MongoDB tu .
Istnieją również pewne ogólne ograniczenia dotyczące indeksów częściowych:
_id
indeksy nie mogą być indeksami częściowymi.- Rzeczywiste indeksy nie mogą być częściowymi indeksami.
- Indeksy klucza odłamkowego nie mogą być indeksami częściowymi.
- Indeksy częściowe nie są obsługiwane w wersjach wcześniejszych niż 3.2.