查询时间和数据库时间不一致如何解决?

当你在写程序时,是否遇到这种问题呢?

查询2018-5-23到2018-5-26之间的数据:

浏览器输入:

查询结果:

发现查询的数据少了26日的了,查看数据库数据:

源代码:

varexpress=require('express');

varrouter=express.Router();

varUser=require('../module/db').User;

/* GET users listing. */

router.get('/finduser',function(req,res) {

varform=req.query;

varstartdate=newDate(form.startdate);

varenddate1=newDate(form.enddate).getTime();

varenddate=newDate(enddate1);

console.log(startdate);

console.log(enddate);

User.findAll({

where:{

createtime:{

$between:[startdate,enddate]

}

}

}).then(function(data){

//console.log(data);

res.json(data);

});

})

module.exports=router;

发现原来数据库时间和查询时间有时间差,8个小时,那怎么解决呢?

查询结果:

代码如下:

最终代码:

varexpress=require('express');

varrouter=express.Router();

varUser=require('../module/db').User;

/* GET users listing. */

router.get('/finduser',function(req,res) {

varform=req.query;

varstartdate=newDate(form.startdate);

varenddate1=newDate(form.enddate).getTime()+86400000;

varenddate=newDate(enddate1);

console.log(startdate);

console.log(enddate);

User.findAll({

where:{

createtime:{

$between:[startdate,enddate]

}

}

}).then(function(data){

//console.log(data);

res.json(data);

});

})

module.exports=router;

只需要将查询的最终时间添加毫秒数8640000,就可以查询到想要的数据了。

代码位nodejs使用sequelize编写sql语句哦!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180523G1ZQJ500?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券