GEO就是Geolocation的简写形式,代表地理坐标,Redis GEO 主要用于存储地理位置信息的,帮助我们根据经纬度来检索数据。
它主要支持如下命令:
假设我们想要使用Redis存储和查询几个地点的位置。首先,我们将地点添加到Redis的地理空间集合中,然后我们可以根据位置查询附近的地点。
GEOADD locations 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
这个命令将“Palermo”和“Catania”两个地点添加到名为locations的地理空间集合中。
GEORADIUS locations 15 37 100 km WITHDIST
这个命令会查找locations集合中距离经度15、纬度37、100公里范围内的所有地点,并返回它们的名称和距离。
WITHDIST:同时返回找到的项距离指定中心的距离。距离以命令的半径参数指定的单位返回。
WITHCOORD:还会返回匹配项的经度、纬度坐标。
WITHHASH:还会以52位无符号整数的形式返回项的原始geohash编码排序集分数。这只对调试有用,对一般用户来说用处不大。