Ниже запроса нет никаких результатов, хотя есть поля, соответствующие местоположению геометрии и отметке времени.
Я попытался изменить $gt
на $ne
и он возвращает сумму всех $value
s.
Я даже попытался проверить timeStamp
больше, чем 0. все равно результата нет. Здесь timestamp - двойной тип данных.
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"
}
}
}]);
Do поля совпадают ОБА 'loc' * и *' timeStamp', а не только один или другой? Вы можете совместить 'timestamp' * без * указания' loc'? Вы не требуете '$ и 'здесь; просто '$ match: {loc: {...}, timeStamp: {...}}' будет делать трюк. – zamnuts
По совпадению, если вы согласны с этим условием, то u. Если да, да .. loc с заданными координатами и меткой времени больше, чем этот диапазон имеет результаты. Я попробовал запустить его без $, и это порождает синтаксическую ошибку. – Aravindh