假定数据结构如下:
{
userid:1111,
data1:[
{title:'test',content:'test',createTime:'2019-03-25T09:24:00.000Z'}
{title:'test',content:'test',createTime:'2019-03-25T09:24:00.000Z'}
]
},
{
userid:2222,
data1:[
{title:'test',content:'test',createTime:'2019-03-25T09:24:00.000Z'}
{title:'test',content:'test',createTime:'2019-03-25T09:24:00.000Z'}
]
}
userid字段为用户唯一标识,我现在想要拿到某个用户data1里特定时间段的数据,应该怎么做?### 问题描述
问题出现的环境背景及自己尝试过哪些方法
我执行以下代码段返回了所有时间段的数据,并不能达到要求
const start = new Date(2019,3,1)
const end = new Date(2019,3,31)
schema.find({userId:req.body.userId,"data1.createTime":{$gte: start,$lt: end}})
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
已解决,使用
obj.aggregate({...},callback)
可以只把符合条件的数据整理出来