node.js – MongoError:不能规范化查询:BadValue坏秩序数组

我有一个数据库与以下文件结构:

{ "_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 } 

我需要为每个“国家”find最高的“温度”(例如,有100个文件,包括“州”,“佛蒙特州”),并在此文件中添加条目“month_high”:真(温度最高)

这是我的代码: http : //pastebin.com/UbACLbSF

但是当我在shell中运行程序时,出现以下错误:

MongoError:无法规范化查询:BadValue坏秩序数组[2]

你应该传入一个对象,而不是一个数组

 cursor.sort({"State": 1, "Temperature": -1}); 

你只需要“国家”和“温度”,对吧? 所以尝试在sorting之前进行投影。 我testing了下面的代码,它的工作:

 var query = {}; var projection = { 'State':1, 'Temperature':1 }; var options = { 'sort' : [['State',1], ['Temperature',-1]] }; var cursor = db.collection('data').find(query, projection, options);