GEODIST 命令返回两个给定位置之间的距离。如果两个位置之间最少一个不存在, 那么命令返回 NULL。
命令格式
GEODIST key member1 member2 [unit]
可用版本:>=3.2.0
时间复杂度:O(log(N))
指定单位的参数 unit 必须是以下单位的其中一个,默认是米(meter):
- m表示单位为米
- km表示单位为千米
- mi表示单位为英里
- ft表示单位为英尺
GEODIST 命令在计算距离时会假设地球为完美的球形,在边缘极端的情况下,这一假设最大会造成0.5%的误差。
命令返回值
计算出的距离会以双精度浮点数的形式被返回。
如果给定的位置元素不存在,那么命令返回 NULL。
例子
redis> GEOADD Sicily 13.361389 38.115556 Palermo 15.087269 37.502669 Catania
(integer) 2
redis> GEODIST Sicily Palermo Catania
"166274.1516"
redis> GEODIST Sicily Palermo Catania km
"166.2742"
redis> GEODIST Sicily Palermo Catania mi
"103.3182"
redis> GEODIST Sicily Foo Bar
(nil)