sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB:dotazy na křížový výběr

Neexistuje způsob, jak dotazovat více kolekcí najednou.

Nejlepším přístupem by bylo uložit všechny dokumenty do stejné kolekce, pokud jsou všechny dokumenty stejného obecného typu. Ve vašem příkladu jsou příspěvky na blogu i novinky typem „obsahu“.

content
{
  type: "blogpost",
  title: "Example",
  slug: "example-post"
  tags: ["foo", "bar"]
},
{
  type: "blogpost",
  title: "Example2",
  slug: "example2"
  tags: ["foo"]
},
{
  type: "news",
  headline: "Test"
  slug: "test-news"
  tags: ["bar"]
}

Tento přístup využívá výhody MongoDB bez schémat; ačkoli oba typy dokumentů mohou mít různé vlastnosti, mohou být všechny uloženy ve stejné kolekci. To vám umožní dotazovat se na veškerý váš obsah nebo pouze na některé typy obsahu v závislosti na vašich požadavcích.



  1. Replikujte pouze dokumenty, kde je {'public':true} v MongoDB

  2. Mongodb, sharding a služby pro více oken

  3. Návrh schématu databáze MongoDB

  4. Dotaz MongoDB s podmínkou „nebo“.