mongoDB查询操作符;

http://www.runoob.com/mongodb/mongodb-operators.html

项目中需要的场景是这样的,每个人每天只能领取一张明信片,换句话说,我要在数据中,查找一条记录,记录的条件为,首先是这个用户有没有领过,没有领过直接领取,若领过,则查询领取时间,查询已经领取时间,是否在当前时间段内。

查询有无此用户很简单,直接用ID查询。

查询已领取时间是否在当前时间段内,需要以下几个参数,

当前时间,new Date();

时间范围;

 1      var now = new Date();
 2         var start = utils.moment(now).startOf('day');
 3         var end = utils.moment(now).endOf('day');
 4         PostcardRecord.findOne({user:userid,at:{$gte:start.valueOf(), $lte:end.valueOf()}},function(err,data){
 5             if(!data){
 6                 res.json({success:true,userid:userid,postcard:id});
 7             }else{
 8                 res.json({success:false});
 9             }
10         });

此处用到了一个库,moment.js.

通过start和end获得当天时间的开始和结尾,注意moment.js传递参数时,传递是 day 若是 hour则是当前时间内;

再有就是注意查询参数的书写格式,at{$get:start,$let:end};

相关文章:

  • 2021-09-01
  • 2022-01-01
  • 2022-01-24
  • 2022-12-23
  • 2022-12-23
  • 2021-11-01
  • 2021-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-04
  • 2022-02-18
  • 2022-12-23
相关资源
相似解决方案