MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como posso obter referências de dados de uma coleção para outra? Mongodb


Para fazer a junção com duas tabelas, certifique-se de que o tipo de ambos os campos, ou seja, localField e foriegnField deve ser o mesmo.

Ou

Com mongodb 4.0 você pode alterar facilmente o tipo de String para ObjectId usando $toObjectId agregação
productSchema.aggregate([   
  { "$lookup": {
    "from": "supplierSchema",
    "let": { "supplierId": { "$toObjectId": "$supplierId" }},
    "pipeline": [
      { "$match": { "$expr": { "$eq": ["$_id", "$$supplierId"] }}}
    ]
    as: "supplier"
  }}
])