2012-06-09 28 views
1

我有一個很奇怪的問題,MongoDB的地理空間索引的查詢順序:的MongoDB - 地理信息查詢 -

> db.events.find({'geo': {'$maxDistance': 5, '$near': [45.21012750000001, 7.1364645]}}) 
error: { 
"$err" : "geo values have to be numbers: { $maxDistance: 5.0, $near: [ 45.21012750000001, 7.1364645 ] }", 
"code" : 13026 

}

最奇怪的是,寫在不同的順序相同的查詢工作完美:

> db.events.find({'geo': {'$near': [45.21012750000001, 7.1364645], '$maxDistance': 5}}) 

不應該兩個查詢保持相同的結果嗎?

回答

2

這兩個查詢的處理方式並不相同 - 正如您所看到的,順序很重要。

有一個要求使https://jira.mongodb.org/browse/SERVER-1990中的兩個完全相同,但它目前不是針對特定版本的。

隨時對該問題進行投票和/或觀看。