【发布时间】:2023-04-01 13:37:02
【问题描述】:
我有以下架构:
User: {
age: Number,
name: String,
comments: {
added: Date,
body: String
}
}
我需要获取所有用户,添加的 cmets 大于自定义日期。
示例数据:
[{
"name": "John",
"age: 21,
"comments": [{
"added": 21-01-12,
"body": "blabla1"
}, {
"added": 21-02-12,
"body": "blabla2"
}, {
"added": 21-01-10,
"body": "blabla3"
}]
}, {
"name": "Bruno",
"age: 33,
"comments": [{
"added": 21-01-10,
"body": "ololo1"
}, {
"added": 21-02-12,
"body": "ololo2"
}, {
"added": 21-01-09,
"body": "ololo3"
}]
}]
我需要所有 cmets 大于 01-01-11 且 cmets 小于此日期的所有用户。
预期结果:
{
"name": "John",
"age: 21,
"comments": [{
"added": 21-01-12,
"body": "blabla1"
}, {
"added": 21-02-12,
"body": "blabla2"
}]
}, {
"name": "Bruno",
"age: 33,
"comments": [{
"added": 21-02-12,
"body": "ololo2"
}]
}
我该怎么办?
【问题讨论】:
-
看看$filter
-
这是正确的过滤器,但结果我有所有用户,有空的 cmets 等等,但我只想要有需要 cmets 的用户
-
请添加您目前的查询
标签: node.js mongodb mongoose mongodb-query aggregation-framework