GEODIST

用法
GEODIST key member1 member2 [ m | km | ft | mi ]
复杂度
O(1)
起始版本
3.2.0
ACL 类别
@geo, @read, @slow

返回有序集合表示的地理空间索引中两个成员之间的距离。

给定一个表示地理空间索引的有序集合,该集合通过 GEOADD 命令填充,此命令返回两个指定成员之间以指定单位表示的距离。

如果一个或两个成员都缺失,该命令返回 NULL。

单位必须是以下之一,默认为米

  • m 表示米。
  • km 表示千米。
  • mi 表示英里。
  • ft 表示英尺。

距离的计算假定地球是一个完美的球体,因此在极端情况下可能会出现高达 0.5% 的误差。

示例

127.0.0.1:6379> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
127.0.0.1:6379> GEODIST Sicily Palermo Catania
"166274.1516"
127.0.0.1:6379> GEODIST Sicily Palermo Catania km
"166.2742"
127.0.0.1:6379> GEODIST Sicily Palermo Catania mi
"103.3182"
127.0.0.1:6379> GEODIST Sicily Foo Bar
(nil)

RESP2 回复

以下之一

  • Nil 回复:一个或两个元素缺失。

  • Bulk string 回复:距离为一个双精度浮点数(表示为字符串),以指定单位返回。

RESP3 回复

以下之一

  • Null 回复:一个或两个元素缺失。

  • Bulk string 回复:距离为一个双精度浮点数(表示为字符串),以指定单位返回。