sql >> Databasteknik >  >> NoSQL >> MongoDB

Är det möjligt att fråga underdokument direkt med mongoose?

Ja, du kan hitta inläggets titel direkt från användarmodellen. som nedan

User.find({"posts.title": "Cats are cool"}, (err, users) => {
  if(err) {
    // return error
  }
  return res.send(users)
})

Det kommer att returnera användaren med alla inlägg, inte bara den matchande inläggstiteln. Så för att endast returnera matchande inläggstitel kan du använda $ positionsoperatör. gillar den här frågan

User.find({"posts.title": "Cats are cool"},
  {username: 1, "posts.$": 1}, // add that you need to project
  (err, users) => {
    if(err) {
      // return error
    }
    return res.send(users)
})

som bara returnerar matchande inlägg



  1. Hur skapar jag en dynamisk är lika med-fråga med Apache Camel och MongoDB?

  2. $filter upp till 2 kapslade nivåer i mongodb

  3. Gruppera och räkna med aggregeringsramverk

  4. Lägg upp dokument och/eller lägg till ett underdokument