Hey i’m trying to create a similiar to sql inner join query with mongo.
My hotel schema
{
“code”: 1,
“name”: {
“content”: “…”
},
“description”: {
…
“countryCode”: “ES”,
“stateCode”: “43”,
…,
“facilities”: [
{
“facilityCode”: 70,
“facilityGroupCode”: 10,
“order”: 1,
“indYesOrNo”: false,
“number”: 260,
“voucher”: false
},
{
“facilityCode”: 50,
“facilityGroupCode”: 10,
“order”: 1,
“number”: 5,
“voucher”: false
}
]
}
My facility schema
{
“code”: 1,
“facilityGroupCode”: 61,
“facilityTypologyCode”: 20,
“description”: {
“languageCode”: “CAS”,
“content”: “text…”
}
},
{
“code”: 1,
“facilityGroupCode”: 62,
“facilityTypologyCode”: 20,
“description”: {
“languageCode”: “CAS”,
“content”: “more text…”
}
}
I need to join the description content into the array of facilities. The foreign keys are both facilityCode and facilityGroupCode. I have tried:
{
from: ‘facility’,
let: {code: “$code”, groupCode: “$facilityGroupCode”},
pipeline: [
{
$match: {
$expr: {
$and: [
{$eq: ["$$code", “$facilities.facilityCode”]},
{$eq: ["$$groupCode", “$facilities.facilityGroupCode”]}
]
}
}}
],
as: ‘facilities’
}
Any advices are appreciated