私の構造。
User:
{
name: "One",
favoriteWorkouts: [ids of workouts],
workouts: [ { name: "My workout 1" },...]
}
データベースからお気に入り/最もホットなワークアウトのリストを取得したいと考えています。
db.users.aggregate(
{ $unwind : "$favorite" },
{ $group : { _id : "$favorite" , number : { $sum : 1 } } },
{ $sort : { number : -1 } }
)
これは戻ります
{
"hot": [
{
"_id": "521f6c27145c5d515f000006",
"number": 1
},
{
"_id": "521f6c2f145c5d515f000007",
"number": 1
},...
]}
でも私はしたい
{
hot: [
{object of hottest workout 1, object of hottest workout 2,...}
]}
最もホットなデータを並べ替えて、ID だけでなくオブジェクトで結果を埋めるにはどうすればよいでしょうか?