Reputation: 401
{
"_id" : "000f7ef7-b4d2-4b3a-a33a-ce4f5a6dc594",
"ClientCode" : "67018",
"ClientName" : "test06",
"Addresses" : [
{
"AddressTypeCode" : "1",
"EmailAddress" : "[email protected]"
},
{
"AddressTypeCode" : "2",
"EmailAddress" : "[email protected]"
}
,
{
"AddressTypeCode" : "3",
"EmailAddress" : "[email protected]"
}
]
}
I would like to get the followings results using mongo projection with filter condition for the subarray Address with AddressTypeCode equals 1 and get the email address.
{ "ClientCode" : "67018", "ClientName" : "test06", "EmailAddress" :[email protected]"}
Upvotes: 0
Views: 73
Reputation: 21
I would first do an unwind:
{ $unwind : "$Addresses" }
Then do a match:
{ $match : { "Addresses.AddressTypeCode" : "1" } }
Then do the projection:
{ $project : { "ClientCode" : 1, "ClientName" : 1, "EmailAddress" : "$Addresses.AddressTypeCode" } }
Upvotes: 0