Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb $near需要geojson点,给定geojson点_Mongodb - Fatal编程技术网

Mongodb $near需要geojson点,给定geojson点

Mongodb $near需要geojson点,给定geojson点,mongodb,Mongodb,我的文档中包含一个地理字段,如下所示 "geo" : { "type" : "Point", "coordinates" : [ 37.44609999, -121.88355687 ] }, 我创建了一个空间索引,如下所示 db.collection.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "

我的文档中包含一个地理字段,如下所示

"geo" : {
    "type" : "Point",
    "coordinates" : [
        37.44609999,
        -121.88355687
    ]
},
我创建了一个空间索引,如下所示

db.collection.getIndexes()
[
    {
        "v" : 1,
        "key" : {
        "_id" : 1
        },
        "ns" : "db.collection",
        "name" : "_id_"
    },
    {
        "v" : 1,
        "key" : {
        "geo.coordinates" : "2dsphere"
        },
        "ns" : "db.collection",
        "name" : "geo.coordinates_2dsphere"
    }
]
但是,当我执行以下查询时(MongoDB手册中的逐字逐句)

我得到以下错误

error: {
    "$err" : "$near requires geojson point, given { type: \"Point\", coordinates: [ 37.44609999, -121.88355687 ] }",
    "code" : 16681
}

有人能告诉我为什么吗?

把要点翻过来:

“geo”:{ “类型”:“点”, “坐标”:[ -121.88355687, 37.44609999 ] },

否则,请检查您的坐标是否为真坐标:

根据geojsonlint.com,我的坐标指定顺序错误。但我的文档是直接从推特流API获取的推特。这是否意味着Twitter正在为其流中的每一条推文创建无效的geoJSON?此外,解决这个问题的唯一办法似乎是我翻转到目前为止收集的每个文档(tweet)中的坐标。所有tweet现在都有一个坐标字段,其中坐标以正确的顺序指定,还有一个geo.coordinates字段,它们是向后的。很高兴我能帮上忙。干杯
error: {
    "$err" : "$near requires geojson point, given { type: \"Point\", coordinates: [ 37.44609999, -121.88355687 ] }",
    "code" : 16681
}