MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Uso de índice composto do MongoDB


No MongoDB , você pode usar o prefixo de índice para consultar o banco de dados. Você não pode usar mais nada. Se sua consulta não contiver prefixo de chave, o índice não será usado .

Supondo que seu índice proposto {'key1':1,'key2':1} :

Consultas que usarão o índice:

  • db.some.find({key1 : {$gt : 100}}) - usa prefixo
  • db.some.find({key1 : {$gt : 100}, key2 : {$lt : 30}}) - usa índice completo
  • db.some.find({key3 : 'test'}).sort({key1 : 1}) - usa prefixo para classificar (correspondência de direção)

Consultas que NÃO usarão índice:

  • db.some.find({key2 : {$gt : 100}}) - a ordem do índice é importante - key2 não é prefixo
  • db.some.find({key3 : 'test'}).sort({key1 : -1}) - a direção do índice é importante para índices de várias colunas
  • db.some.find({key3 : 'test'}).sort({key2 : 1}) - não é prefixo