GEORADIUSBYMEMBER (已弃用)

从 Redis 6.2.0 版本开始,此命令被认为已弃用。

在迁移或编写新代码时,可以使用 GEOSEARCHGEOSEARCHSTORE 命令,并使用 BYRADIUSFROMMEMBER 参数。

语法
GEORADIUSBYMEMBER key member radius <m | km | ft | mi> [WITHCOORD]
  [WITHDIST] [WITHHASH] [COUNT count [ANY]] [ASC | DESC] [STORE key
  | STOREDIST key]
可用时间
3.2.0
时间复杂度
O(N+log(M)),其中 N 是由中心和半径划定的圆形区域的边界框内的元素数量,M 是索引内的项目数量。
ACL 类别
@write, @geo, @slow,

此命令与 GEORADIUS 相同,唯一的区别是,它不是以经度和纬度值作为查询区域的中心,而是使用已存在于由有序集合表示的地理空间索引内的成员名称。

指定成员的位置用作查询的中心。

请查看下面的示例和 GEORADIUS 文档以获取有关命令及其选项的更多信息。

请注意,自 Redis 3.2.10 和 Redis 4.0.0 版本以来,GEORADIUSBYMEMBER_RO 也可用,以提供可在副本中使用的只读命令。有关更多信息,请参见 GEORADIUS 页面。

示例

GEOADD Sicily 13.583333 37.316667 "Agrigento" GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania" GEORADIUSBYMEMBER Sicily Agrigento 100 km

RESP2/RESP3 回复

以下之一

  • 如果未指定 WITH* 选项,则返回一个包含匹配成员名称的 数组回复
  • 如果指定了 WITHCOORDWITHDISTWITHHASH 选项,则命令返回一个 数组回复,其中每个子数组代表单个项目
    • 从中心到匹配成员的距离,以浮点数表示,单位与半径中指定的单位相同。
    • Geohash 整数。
    • 坐标,以两个项目 x,y 数组形式表示(经度,纬度)。

历史

  • 从 Redis 7.0.0 版本开始:添加了对大写单位名称的支持。
RATE THIS PAGE
Back to top ↑