2014-01-08 26 views
0

我想用$或$查詢$ geoWithin。

.find({"$or":[{"loc":{"$within":{"$center":[[79.853449,6.906746],5]}}},{"loc":{"$within":{"$center":[[10.853449,2.906746],5]}}}]}) 

我得到「$或不包含'特殊'查詢」。我究竟做錯了什麼?即時通訊使用最新的mongodb

回答

3

當前(2.4)或以前版本的MongoDB不支持此功能(能夠在$或子句中包含$ geo查詢)。

從2.5.5(開發版本!)起,它將受到支持,以及2.6版本的產品發佈。詳情請參閱https://jira.mongodb.org/browse/SERVER-3984

+0

感謝您的信息。有關完成此查詢的任何建議?在2.4中的 – astroanu

+1

您必須將其作爲兩個單獨的查詢並自己合併結果。當它出現時(現在的任何一天),你也可以嘗試2.5.5。 –

+0

如果有人有興趣知道我是如何解決這個問題的: 我手動使用mongo execute計算近球。我知道它不像mongo那樣準確,但這個方程式幾乎沒問題。 http://stackoverflow.com/a/6311501/626485 – astroanu

相關問題