MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Sammlung A, die einen Ausländer mit B hat, B hat einen Ausländer mit Sammlung C, wie kann ich einen Ausländer von A zu Sammlung C bringen? (Aggregat)

  • $lookup Stadtsammlung beitreten
  • $lookup Ländersammlung beitreten
  • $project Um erforderliche Felder anzuzeigen, holen Sie sich das erste Element von city und country mit $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" }
    }
  }
])

Spielplatz