Redis Geospatial 地理位置 类型

进度纬度查询工具
规则; 两极无法直接添加,一般会下载城市数据,直接通过java程序一次性导入

1.geoadd 将指定的地理空间位置(经度、纬度、名称)添加到指定的key中

将指定的地理空间位置(经度、纬度、名称)添加到指定的key中

 GEOADD 空间 经度 纬度 城市名称  .... 经度 纬度 城市名称 
 GEOADD china:city 121.48941 31.40527 shanghai

2.geopos 从key里返回所有给定位置元素的位置(经度和纬度)

从key里返回所有给定位置元素的位置(经度和纬度)

 GEOPOS 空间 城市名称 
 GEOPOS china:city shanghai

3.geodist 返回两个给定位置之间的距离

返回两个给定位置之间的距离

 GEODIST 空间 城市名称1  城市名称2 单位
 GEODIST china:city shanghai  beijing  km
单位如下:
m 表示单位为米。
km 表示单位为千米。
mi 表示单位为英里。
ft 表示单位为英尺。

4.Geohash 返回一个或多个位置元素的 Geohash 表示

返回一个或多个位置元素的 Geohash 表示

 GEOHASH  空间  城市名称1   城市名称2 
 GEOHASH  china:city  shanghai   beijing  

5.Georadius 以给定的经纬度为中心, 找出某一半径内的元素

以给定的经纬度为中心, 找出某一半径内的元素

 GEORADIUS  空间  经度 纬度  半径长度  单位  [WITHCOORD进度纬度] [WITHDIST直线距离]
redis> GEOADD Sicily 13.361389 38.115556 "Palermo" 15.087269 37.502669 "Catania"
(integer) 2
redis> GEORADIUS Sicily 15 37 200 km WITHDIST
1) 1) "Palermo"
   2) "190.4424"
2) 1) "Catania"
   2) "56.4413"
redis> GEORADIUS Sicily 15 37 200 km WITHCOORD
1) 1) "Palermo"
   2) 1) "13.361389338970184"
      2) "38.115556395496299"
2) 1) "Catania"
   2) 1) "15.087267458438873"
      2) "37.50266842333162"
redis> GEORADIUS Sicily 15 37 200 km WITHDIST WITHCOORD
1) 1) "Palermo"
   2) "190.4424"
   3) 1) "13.361389338970184"
      2) "38.115556395496299"
2) 1) "Catania"
   2) "56.4413"
   3) 1) "15.087267458438873"
      2) "37.50266842333162"
redis> 
WITHDIST: 在返回位置元素的同时, 将位置元素与中心之间的距离也一并返回。 距离的单位和用户给定的范围单位保持一致。
WITHCOORD: 将位置元素的经度和维度也一并返回。
WITHHASH:52 位有符号整数的形式, 返回位置元素经过原始 geohash 编码的有序集合分值。 这个选项主要用于底层应用或者调试, 实际中的作用并不大。
命令默认返回未排序的位置元素。 通过以下两个参数, 用户可以指定被返回位置元素的排序方式:

ASC: 根据中心的位置, 按照从近到远的方式返回位置元素。
DESC: 根据中心的位置, 按照从远到近的方式返回位置元素。

6.Georadiusbymember 找出位于指定范围内的元素,中心点是由给定的位置元素决定

个命令和 GEORADIUS 命令一样, 都可以找出位于指定范围内的元素, 但是 GEORADIUSBYMEMBER 的中心点是由给定的位置元素决定的, 而不是像 GEORADIUS 那样, 使用输入的经度和纬度来决定中心点

找出位于指定范围内的元素,中心点是由给定的位置元素决定

 GEORADIUSBYMEMBER 空间  城市名称  半径长度  单位 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只小小狗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值