こんにちは私は以下の文書を持っています。複数の基準に基づいてメッセージエージェントからメッセージを抽出したいと思います。複数の一致条件に基づいてネストされたリストからサブ文書を返します
{
"_id" : ObjectId("58df770371043e7087cdaadd"),
"prospectemailid" : "[email protected]",
"prospectid" : "1491038545032",
"useremail" : "[email protected]",
"threadidslist" : [
{
"threadid" : "15b28e8e711f71b0",
"subject" : "sub",
"campaignid" : "1491460056589",
"messagelist" : [
{
"emailuniqueid" : "1492376430400",
"messageid" : "15b28e8e711f71b0",
"timestamp" : "Sat Apr 01 15:16:43 IST 2017",
"from" : "[email protected]",
"body" : "Hello",
"labelid" : "SENT",
"to" : "[email protected]",
"messageidpayload" : ""
},
{
"emailuniqueid" : "1492376430400",
"messageid" : "15b28ecbcbe5b32d",
"timestamp" : "Sat Apr 01 15:20:54 IST 2017",
"from" : "[email protected]",
"body" : "Hi",
"labelid" : "RECEIVED",
"to" : "[email protected]",
"messageidpayload" : "<[email protected]om>"
}
]
}
]
}
予定の基準に基づいて出力:prospectemailid = 1491038545032、USEREMAIL = XYZ @ gmail.com、threadidslist.campaignid = 1491460056589とmessagelist.emailuniqueid = 1492376430400が
{
"emailuniqueid" : "1492376430400",
"messageid" : "15b28ecbcbe5b32d",
"timestamp" : "Sat Apr 01 15:20:54 IST 2017",
"from" : "[email protected]",
"body" : "Hi",
"labelid" : "RECEIVED",
"to" : [email protected]",
"messageidpayload" : "<[email protected]om>"
}
ありますありがとう..!
は、これまで私が試してみました:
db.getCollection('GD').aggregate(
[
{ $match:{
"prospectid" : "1491038545032",
"useremail" : "[email protected]",
"threadidslist.campaignid" : "1491460056589",
"threadidslist.messagelist.emailuniqueid" : "1492376430400"
}
}
])
@chridamモンゴバージョン:
は、所望の結果を得るために、次のパイプラインを実行している考えてみましょう3.4を、私は私がこれまでQUESで試してみました何が含まれています。 –