1

我有这种蒙戈

$date = (int)(date("YmdHis", strtotime("now -30 days")));
$date2 = (int)(date("YmdHis", strtotime("now")));    

$visits_options2 = array(
    array(
        '$match' => array(
                'date' => array('$lte'=>$date2, '$gte'=>$date),
                'click'=>1
            )
        ),
        array(
            '$group' => array(
                "_id"=>array({LOT OF FIELDS}),
                'cpc' => array('$sum' => '$cpc'),
                'visits' => array('$sum'=>1)
            )
        )
    ); 

当我只'$gte'在匹配时使用(肯定有数据)时,谜团就来了,但如果我同时使用两者$gte$lte没有。

有什么线索吗?

更新:好的,所以它变得更奇怪了。如果我gte + lte在控制台上使用(完全相同的查询)它可以工作。如果我只使用 gte 并且“现在”日期控制台说没有结果(工作正常)并且 mongo 驱动程序返回结果,就好像我使用了“-30 天”日期一样。看起来很有趣。

已解决:仅适用于有同样问题的任何人,更新 mongo 驱动程序,一切正常!

4

0 回答 0