最近在做数据的访问量统计,时间格式是Date类型,发现用group按时间分组后访问量数据不对,原来是因为Mongodb中的Date与我们有8小时时差。解决办法如下:
按小时分组查询时语句如下:
$group: { _id:{hour:{$hour:'$timexxx'}} }
由于有8小时时差,所以查询时加上8小时,改为如下:
$group: { _id:{hour:{$hour:{$add:['$timexxx',28800000]}}} }
另外按月分组和日期分组一样,如下:
$group: { _id:{month:{$month:{$add:['$time',28800000]}}} }
$group: { _id:{dayOfMonth:{ $dayOfMonth: {$add:['$time',28800000]} }} }