Depuis Mongo 3.2, les réponses à cette question ne sont généralement plus correctes. Le nouvel opérateur $lookup ajouté au pipeline d'agrégation est essentiellement identique à une jointure externe gauche :
https://docs.mongodb.org/master/reference/operator/aggregation/lookup/#pipe._S_lookup
À partir de la documentation :
{
$lookup:
{
from: <collection to join>,
localField: <field from the input documents>,
foreignField: <field from the documents of the "from" collection>,
as: <output array field>
}
}
Bien sûr, Mongo n'est pas une base de données relationnelle, et les développeurs prennent soin de recommander des cas d'utilisation spécifiques pour $lookup, mais au moins à partir de 3.2, faire une jointure est désormais possible avec MongoDB.