我的neo4j数据库中有一些现有数据。我想基于节点存在的经度和纬度来计算从一个节点到另一个节点的距离。为此,我想在现有数据上创建空间索引,但我不知道如何创建该索引。
答案 0 :(得分:2)
您是否使用空间扩展来创建OSMLayer?如果没有,并且您只想要点之间的测地线,则可以使用CREATE (ber:City { lat: 52.5, lon: 13.4 }),(sm:City { lat: 37.5, lon: -122.3 })
RETURN 2 * 6371 * asin(sqrt(haversin(radians(sm.lat - ber.lat))+ cos(radians(sm.lat))*
cos(radians(ber.lat))* haversin(radians(sm.lon - ber.lon)))) AS dist
函数。
http://neo4j.com/docs/stable/query-functions-mathematical.html#functions-haversin
<a href="1.php#filter=.element007">