1

ドキュメントを 2 つのフィールドでグループ化しようとしていfield1ますfield2

myCollection.aggregate([{
  $group: {
    _id: {
      group1: "$field1",
      group2: "$field2"
    },
    count: {
      $sum: 1
    }
  }
}])

これは正常に機能し、期待される結果が得られます。

しかし、上記をループで再実行したいのですが、実行ごとに異なる$field2. ありがとう

const field3 = 'someValue';  // <<--- will change in every loop run ---

myCollection.aggregate([{
  $group: {
    _id: {
      group1: "$field1",
      group2: "$$field3"  //<<---------------- 
    },
    count: {
      $sum: 1
    }
  }
}])
4

1 に答える 1

4

以下はあなたのために働くはずです

var field3  = 'someValue';
myCollection.aggregate([{
  $group: {
    _id: {
      group1: "$field1",
      group2: "$" + field3,
    },
    count: {
      $sum: 1
    }
  }
}])
于 2016-09-28T07:42:50.130 に答える