sql >> Base de Datos >  >> NoSQL >> MongoDB

colección A que tiene un extranjero con B, B tiene un extranjero con colección C, ¿cómo puedo traer un extranjero de A a la colección C? (Agregado)

  • $lookup unirse a la colección de la ciudad
  • $lookup únete a la colección de países
  • $project para mostrar los campos obligatorios, obtenga el primer elemento de city y country usando $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" }
    }
  }
])

Patio de juegos