집계와 비슷한 작업을 수행 할 수 있습니다.
db.coll.aggregate([{$group: {_id: "$param1", extras: {$push: "$_id"}}}])
나는 이것을 삽입했다 :
> db.coll.insert({'_id': 1, param1: 'a', b: 'b'})
> db.coll.insert({'_id': 2, param1: 'a', b: 'c'})
> db.coll.insert({'_id': 3, param1: 'a', b: 'd'})
> db.coll.insert({'_id': 4, param1: 'b', b: 'e'})
그리고 이것은 결과입니다.
{
"result" : [
{
"_id" : "b",
"extras" : [
4
]
},
{
"_id" : "a",
"extras" : [
1,
2,
3
]
}
],
"ok" : 1
}
그런 다음 각 문서를 반복하고 배열에서 _id가 param1의 값과 일치하는 값을 찾을 수 있습니다.
출처
https://stackoverflow.com/questions/22080102