我有一个包含以下文档结构的数据库:
{
"_id" : ObjectId("520bea012ab230549e749cff"),
"Day" : 1,
"Time" : 54,
"State" : "Vermont",
"Airport" : "BTV",
"Temperature" : 39,
"Humidity" : 57,
"Wind Speed" : 6,
"Wind Direction" : 170,
"Station Pressure" : 29.6,
"Sea Level Pressure" : 150
}
我需要为每个'州'找到最高的'温度'(即有100个带'州'的文件:'佛蒙特州')并添加条目'month_high':true为本文档(具有最高的'温度)
这是我的代码:http://pastebin.com/UbACLbSF
但是当我在shell中运行程序时,我收到以下错误:
MongoError:无法规范化查询:BadValue错误的顺序数组[2]
答案 0 :(得分:3)
你应该传入一个对象,而不是一个数组
cursor.sort({"State": 1, "Temperature": -1});
答案 1 :(得分:0)
你只需要'州'和温度'对吧?所以在排序之前尝试投影。我已经测试了以下代码并且它有效:
var query = {};
var projection = { 'State':1, 'Temperature':1 };
var options = { 'sort' : [['State',1], ['Temperature',-1]] };
var cursor = db.collection('data').find(query, projection, options);