指定されたcategory
との一致を試みることができます およびcreatedAt
-$match
を使用した日付 、次にグループ化し、最後に$addToSet
を使用します すべての一意のstaffId
を取得します s:
db.collection.aggregate([
{
$match: {
"category": "trend",
"createdAt": {$gte: new Date("2020-08-13T00:00:00Z"), $lt: ISODate("2020-08-14T00:00:00Z")}
}
},
{
"$group": {
"_id": null,
"staffIds": {
"$addToSet": "$staffId"
}
}
}
]);
これがmongoplaygroundの例です(ISODateはそこでサポートされていないため、日付に文字列と正規表現を使用する必要がありました): https: //mongoplayground.net/p/oGM7cfvCRQx