我有以下JSON结构:
{
"type": "Feature",
"id": "node/1717565071",
"properties": {
"type": "node",
"id": 1717565071,
"tags": {
"amenity": "post_box",
"operator": "P&T",
"collection_times": "Mo-Fr 08:30, Sa 08:00"
},
"relations": [],
"meta": {
"timestamp": "2012-04-15T09:24:35Z",
"version": 1,
"changeset": 11307674,
"user": "kewl",
"uid": 317259
}
},
"geometry": {
"type": "Point",
"coordinates": [
6.1428674,
49.5716325
]
}
}
我需要为它创建geoindex。
我运行命令:
127.0.0.1:8529@geodb> db.lux1.ensureIndex({ type: "geo", fields: [ "coordinates" ] } )
{
"id" : "lux1/569778",
"type" : "geo1",
"fields" : [
"coordinates"
],
"geoJson" : false,
"constraint" : false,
"unique" : false,
"ignoreNull" : true,
"sparse" : true,
"isNewlyCreated" : false,
"code" : 200
}
我期待一些处理,但不是简单的输出。
我也试过了:
127.0.0.1:8529@geodb> db.lux1.ensureIndex({ type: "geo", fields: [ "geometry.coordinates" ] } )
{
"id" : "lux1/570071",
"type" : "geo1",
"fields" : [
"geometry.coordinates"
],
"geoJson" : false,
"constraint" : false,
"unique" : false,
"ignoreNull" : true,
"sparse" : true,
"isNewlyCreated" : true,
"code" : 201
}
我认为我错过了fields
。
如何为创建索引指定正确的密钥?
答案 0 :(得分:0)
你的第一次尝试显然是错误的,因为路径错了。 ArangoDB已经告诉过你:"isNewlyCreated" : false
。
第二次尝试是正确的,ArangoDB也告诉你:"isNewlyCreated" : true
。
那么为什么你认为它不起作用?只需尝试地理查询。如果您的字段上没有地理索引,则会收到错误。