Bạn có thể thử tổng hợp bên dưới trong mongodb 4.0
Bạn có thể chuyển đổi timestamp
cho đến nay bằng cách sử dụng $toDate
tổng hợp và sau đó là $group
với $month
tổng hợp
db.collection.aggregate([
{ "$match": { "type": "deposits" }},
{ "$addFields": {
"date": {
"$toDate": "$timestamp"
}
}},
{ "$group": {
"_id": { "$month": "$date" },
"deposits": {
"$push": "$$ROOT"
}
}}
])
Bạn có thể thử tổng hợp bên dưới trong mongodb 3.4
Trong 3,4 bạn có thể chuyển đổi timestamp
cập nhật bằng cách thêm new Date()
trong đó và $group
nó bằng cách sử dụng $dateToString
tổng hợp
db.collection.aggregate([
{ "$match": { "type": "deposits" }},
{ "$addFields": {
"date": {
"$add": [ new Date(0), "$timestamp" ]
}
}},
{ "$group": {
"_id": {
"$dateToString": {
"format": "%m",
"date": "$date"
}
},
"deposits": {
"$push": "$$ROOT"
}
}}
])