MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

В MongoDB, как мога да намеря документ, който е вграден?

Това е очакваното поведение.

Ако искате да направите заявка за индивидуално поле(я) на вграден документ, трябва да използвате следния синтаксис - като използвате точката (. ) нотация. Например и двете заявки връщат документа:

db.test.find({"KPOP.SHINee": "Dream Girl"})
db.test.find({"KPOP.SHINee": "Dream Girl", "KPOP.BTS": "Fake Love" })

В горните заявки можете да посочите едно, две или всички полета и в произволен ред.

Използвате следния синтаксис, когато указвате филтъра за цялото вграден документ:

db.test.find({ KPOP: { SHINee: "Dream Girl", "Girl's Generation": "I Got a Boy", BTS: "Fake Love" } })

В този случай имайте предвид, че редът на полетата на вградения документ трябва да е същият като този на оригиналния документ; т.е. SHINee , "Girl's Generation" и BTS (в рамките на KPOP ). И трябва да посочите всички полетата на вградения документ.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да изтриете елементи в MongoRepository с помощта на анотация на заявка?

  2. Как да намеря колекция от кодове с регулярен израз и сложни критерии с помощта на Java MongoDB драйвер?

  3. създаване на покрит индекс за рамка за агрегиране

  4. DynamoDB срещу MongoDB NoSQL

  5. Как да задействате необработени заявки на MongoDB директно в Ruby