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

kolekce A, která má cizince s B, B má cizince s kolekcí C, jak mohu přivést cizince z A do sbírky C? (Souhrn)

  • $lookup připojte se k městské sbírce
  • $lookup připojit se ke sbírce zemí
  • $project pro zobrazení povinných polí získejte první prvek z city a country pomocí $first
db.travel_reservation.aggregate([
  {
    $lookup: {
      from: "city",
      localField: "city_id",
      foreignField: "_id",
      as: "city"
    }
  },
  {
    $lookup: {
      from: "country",
      localField: "city.country_id",
      foreignField: "_id",
      as: "country"
    }
  },
  {
    $project: {
      name_person: 1,
      city: { $first: "$city" },
      country: { $first: "$country" }
    }
  }
])

Hřiště




  1. MongoDB najde časové období, pokud se překrývá s jinými daty

  2. Další vlastnosti ověření MongoDB jsonSchema

  3. Nelze deserializovat řetězec z BsonType ObjectId v MongoDb C#

  4. 5 způsobů, jak zkontrolovat velikost sbírky v MongoDB