开发者社区> 问答> 正文

mongoose如何返回特定时间段数据

假定数据结构如下:

{

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}})
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

展开
收起
李博 bluemind 2019-04-08 14:15:10 1983 0
1 条回答
写回答
取消 提交回答
  • 云栖社区Java、Redis、MongoDB运营小编,有意合作请联系钉钉:15810436147

    已解决,使用 obj.aggregate({...},callback) 可以只把符合条件的数据整理出来

    2019-07-17 23:32:47
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载