为什么这个GEORADIUS呼叫redis不工作?

时间:2016-11-21 22:44:48

标签: redis geolocation geospatial

  1. 将x添加到mytest

    127.0.0.1:6379> geoadd mytest -78.45 38.13 x
    (integer) 1
    
  2. 尝试找到距离x:

    50.000km的点
    127.0.0.1:6379> georadius mytest 72.8 19.13 50000 km
    (empty list or set)
    
  3. 将y添加到mytest:

    127.0.0.1:6379> geoadd mytest 72.8 19.13 y
    (integer) 1
    
  4. 计算x和y之间的距离:

    127.0.0.1:6379> geodist mytest x y km
    "12979.3623"
    
  5. 如果(4)发现x和y之间的距离仅为12979 km,为什么(2)为空集?

1 个答案:

答案 0 :(得分:1)

这看起来像是一个缺陷 - 我建议你通过在http://github.com/antirez/redis/issues打开一个问题进行举报。

有趣的是,请注意:

127.0.0.1:6379> GEORADIUS mytest -78.45 38.13 50000 km
1) "x"
2) "y"

还有:

127.0.0.1:6379> GEORADIUSBYMEMBER mytest y 50000 km
1) "y"
127.0.0.1:6379> GEORADIUSBYMEMBER mytest x 50000 km
1) "x"
2) "y"