sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB sammensat indeksbrug

I MongoDB , kan du bruge indekspræfiks til at forespørge databasen. Du kan ikke bruge andet. Hvis din forespørgsel ikke indeholder nøglepræfiks, vil indekset ikke blive brugt .

Forudsat dit foreslåede indeks {'key1':1,'key2':1} :

Forespørgsler, der vil bruge indeks:

  • db.some.find({key1 : {$gt : 100}}) - bruger præfiks
  • db.some.find({key1 : {$gt : 100}, key2 : {$lt : 30}}) - bruger fuldt indeks
  • db.some.find({key3 : 'test'}).sort({key1 : 1}) - bruger præfiks til sortering (retningsmatch)

Forespørgsler, der IKKE vil bruge indeks:

  • db.some.find({key2 : {$gt : 100}}) - indeksrækkefølge har betydning - nøgle2 er ikke præfiks
  • db.some.find({key3 : 'test'}).sort({key1 : -1}) - Indeksretning har betydning for indekser med flere kolonner
  • db.some.find({key3 : 'test'}).sort({key2 : 1}) - det er ikke præfiks


  1. Laravel 5.1 Session og Socket.IO + Redis - Sender meddelelser til loggede (kendte) brugere og gruppe af brugere

  2. MongoDB GPG - Ugyldige signaturer

  3. Golang + MongoDB indlejret type (indlejring af en struktur i en anden struktur)

  4. Laravel Socket.io Tilsluttet, men modtager ikke data