私はこのデータをMongoDBに持っています。このデータを基にして、同じIDの下ですべての追跡番号を単一の配列形式で取得したいと思います。mongodbでgroup byを実行する方法
* 1 */
{
"_id" : ObjectId("597056182a93692b4c7691bf"),
"Sid":1,
"Carriers" : [
{
"Tracking" : [
{
"TrackingNo" : "121_dom"
}
]
},
{
"Tracking" : [
{
"TrackingNo" : "779591314278"
},
{
"TrackingNo" : "779591314039"
},
{
"TrackingNo" : "779591314231"
}
]
}
]
}
/* 2 */
{
"_id" : ObjectId("597057338c65c002e4285fb3"),
"Sid":2,
"Carriers" : [
{
"Tracking" : [
{
"TrackingNo" : "122_dom"
}
]
},
{
"Tracking" : [
{
"TrackingNo" : "77959131427"
},
{
"TrackingNo" : "77959131403"
}
]
}
]
}
/* 3 */
{
"_id" : ObjectId("5980ae7ecc71b581b626d20b"),
"Sid":3,
"Carriers" : [
{
"Tracking" : [
{
"TrackingNo" : "123_dom"
}
]
},
{
"Tracking" : [
{
"TrackingNo" : "77959131408"
},
{
"TrackingNo" : "779591314059"
},
{
"TrackingNo" : "779591315551"
}
]
}
]
}
すなわち、単一のアレイに同じ_id下のすべてのトラッキング番号を示しており、_idの操作によってグループを行う上で、結果セットはこのようなことを意味:あなたは配列を有するよう
{
"_id" : ObjectId("597056182a93692b4c7691bf"),
"Sid":1,
"Carriers" : [
{
"Tracking" : [
{
"TrackingNo" : "121_dom"
}
{
"TrackingNo" : "779591314278"
},
{
"TrackingNo" : "779591314039"
},
{
"TrackingNo" : "779591314231"
}
]
}
]
}
あなたが試したことをお知らせください – sidgate
ここで私が使ったクエリは です。db.getCollection( '出荷')。 : '$ Carriers'})。pretty(); – user1903796
[MongoDB:ネストされた配列を1つのドキュメントにグループ化する方法は?](https://stackoverflow.com/questions/46450119/mongodb-how-to-group-nested-arrays-in-one-document) – sidgate