搜尋

首頁  >  問答  >  主體

連結mongodb,查詢地理位置的問題

com.mongodb.MongoException:找不到任何特殊索引:2d(需要索引),2dsphere(需要索引),for:{position:{$nearSphere:[120.344944,36.067463]}}
在 com.mongodb.QueryResultIterator.throwOnQueryFailure(QueryResultIterator.java:214)
在 com.mongodb.QueryResultIterator.init(QueryResultIterator.java:198)
在 com.mongodb.QueryResultIterator.initFromQueryResponse(QueryResultIterator.java:176)
在 com.mongodb.QueryResultIterator.(QueryResultIterator.java:64)
在 com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:86)
在 com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:66)
在 com.mongodb.DBCursor._check(DBCursor.java:458)
在 com.mongodb.DBCursor._hasNext(DBCursor.java:546)
在 com.mongodb.DBCursor.hasNext(DBCursor.java:571)

我已經用了
db.PostCo.createIndex( { location : "2dsphere" } )
db.PostCo.createIndex( { location : "2d" } )
建立相應的索引。
還是無法正常工作。

巴扎黑巴扎黑2764 天前741

全部回覆(3)我來回復

  • 黄舟

    黄舟2017-04-25 09:05:38

    db.PostCo.ensureIndex( { location : "2dsphere" } )
    

    mongodb,2d搜索,我記得好像是這麼創建索引的,看你的錯誤是在java中用的第三方包報錯了?在mongodb命令列中查詢正常嗎?

    回覆
    0
  • PHPz

    PHPz2017-04-25 09:05:38

    db.PostCo.ensureIndex({"location":"2d"},{min:0,max:200})試試。

    回覆
    0
  • 给我你的怀抱

    给我你的怀抱2017-04-25 09:05:38

    推薦使用https://github.com/T-baby/Mon...,可以參考文件https://t-baby.gitbooks.io/mo... 來實現地理位置查詢,MongoDB-Plugin簡化了原生寫法所以看一遍就可以上手了

    回覆
    0
  • 取消回覆