sql >> Base de Datos >  >> NoSQL >> MongoDB

Uso del índice compuesto de MongoDB

En MongoDB , puede usar el prefijo de índice para consultar la base de datos. No puedes usar nada más. Si su consulta no contiene un prefijo clave, el índice no se utilizará .

Asumiendo su índice propuesto {'key1':1,'key2':1} :

Consultas que utilizarán el índice:

  • db.some.find({key1 : {$gt : 100}}) - usa prefijo
  • db.some.find({key1 : {$gt : 100}, key2 : {$lt : 30}}) - utiliza el índice completo
  • db.some.find({key3 : 'test'}).sort({key1 : 1}) - usa prefijo para ordenar (coincidencia de dirección)

Consultas que NO usarán el índice:

  • db.some.find({key2 : {$gt : 100}}) - el orden del índice es importante - key2 no es un prefijo
  • db.some.find({key3 : 'test'}).sort({key1 : -1}) - la dirección del índice es importante para los índices de varias columnas
  • db.some.find({key3 : 'test'}).sort({key2 : 1}) - no es prefijo