是否有可能在兩個圓的區別中在所得區域中執行MongoDB中的地理空間搜索。假設我有一個半徑爲x的圓A和另一個半徑爲y的圓B,其中y> x。我需要找到B - A內部的所有點。這對MongoDB是否可行?我知道MongoDB支持多邊形搜索,但也許有更好的方法。請記住,我正在使用mongoid從rails應用程序中使用Mongo。如何在MongoDB中兩個圓的區別內執行地理搜索=
2
A
回答
4
是的,這是可能的。 使用$within
運營商。
http://www.mongodb.org/display/DOCS/Geospatial+Indexing/#GeospatialIndexing-Querying
界限查詢
$內可以用來代替$附近找到一個形狀內的項目。結果不按距離排序,這可能會導致在不需要此排序時更快的查詢。支持$ box(矩形),$ center(圓形)和$ polygon(凹凸多邊形)類型的形狀。所有邊界查詢都隱含地將邊界作爲邊界的一部分包含進來,儘管由於浮點不準確而不能嚴格依賴。
要查詢的矩形內的所有點,必須指定左下和右上拐角:
中心= [50,50: 圓被一箇中心點和半徑指定的] 半徑= 10 db.places.find({ 「LOC」:{ 「內$」:{ 「$中心」:[中心,半徑]}}})
一種方法是,你可以在兩個圓圈內找到點,然後做一組相交。 如果這兩個圓是同心圓的,或者如果不是同心圓的,但有一些重疊的區域,這將適用於這兩種情況。
相關問題
- 1. 在兩個地區搜索表單?
- 2. MongoDB的地理搜索上兩個集合
- 3. MongoDB:如何基於Mongo中的兩個參數進行搜索
- 4. 兩個區別mongodb查詢?
- 5. 如何在Node.js的MongoDB中執行搜索
- 6. 如何在mongodb中使用全文搜索執行「like」查詢?
- 7. 如何使用Java在MongoDB中執行通配符搜索
- 8. MongoDB的地理空間 - 搜索指向
- 9. 在搜索欄中執行地址http
- 10. 特別charachters搜索MongoDB的
- 11. 如何使用django-haystack + solr執行地理空間搜索
- 12. 如何在iPhone中執行Spotlight搜索
- 13. 如何在iphone中執行搜索sdk
- 14. 如何在RoR中執行此搜索?
- 15. 如何在Google Maps API上的圓圈內繪製圓圈並進行搜索?
- 16. riak搜索mongodb索引之間的區別
- 17. 如何使用MongoDb搜索甜甜圈形狀內的地理對象
- 18. 如何區分兩個相撞的圓?
- 19. 「在X英里內」在mongodb中搜索
- 20. 執行區分大小寫的搜索
- 21. 如何在Ext JS搜索字段中執行搜索
- 22. 如何在sql中執行兩個類似參數的搜索功能
- 23. 如何在一個原始模式搜索中執行多個地方seds?
- 24. 在lucene中進行相對搜索(非地理空間搜索)
- 25. 如何在地理空間搜索中返回與MongoDB和Mongoose的距離?
- 26. 在wp8中執行搜索
- 27. 在django中執行搜索
- 28. 如何在SolrNet的多個表上執行索引/搜索
- 29. 在執行搜索
- 30. 在MongoDB中搜索
這看起來像只有可能的方法。 $內部沒有像$ annularRing這樣的運算符。 – 2012-08-02 05:35:09
謝謝,它的工作原理 – rusllonrails 2015-12-08 13:55:21