MongoDB $ gt无效

时间:2015-05-21 10:40:41

标签: mongodb

虽然有些字段与地理位置和时间戳相匹配,但下面的查询没有给我任何结果。

我尝试将$gt更改为$ne,并返回所有$value的总和。

我甚至尝试检查timeStamp大于0.仍然没有结果。这里的时间戳是双数据类型。

db.csv2.aggregate([{
    $match: {
        $and: [{
            loc: {
                $geoWithin: {
                    $box: [
                        [-128.232422, 26.382028],
                        [-109.6875, 43.624147]
                    ]
                }
            }
        }, {
            timeStamp: {
                $gt: 1432201420790
            }
        }]
    }
}, {
    $group: {
        _id: null,
        total: {
            $sum: "$value"
        }
    }
}]);

1 个答案:

答案 0 :(得分:2)

给你的错误是明确的。阅读文档以了解如何实现$ gt聚合函数:documentation

基本上,条件是数组

{ $gt: ["$timeStamp", 1432201420790] }

<强> [编辑] 您的问题可能来自于在代码中缺少的timestamp字段之前带有美元符号的语法。试试这个

{ $gt: ["$timeStamp", 1432201420790] }

而不是

{ timeStamp: { $gt: 1432201420790 }}