首页 NoSQL Redis 正文

Redis 新数据类型Geospatial

金鹏头像 金鹏 Redis 2021-12-04 15:12:53 0 706
导读:简介Redis3.2中增加了对GEO类型的支持。GEO,Geographic,地理信息的缩写。该类型,就是元素的2维坐标,在地图上就是经纬度。redis基于该类型,提供了经纬度...
简介

Redis 3.2 中增加了对GEO类型的支持。GEOGeographic,地理信息的缩写。该类型,就是元素的2维坐标,在地图上就是经纬度。redis基于该类型,提供了经纬度设置,查询,范围查询,距离查询,经纬度Hash等常见操作。

 

命令

1geoadd


1)格式

geoadd<key>< longitude><latitude><member> [longitude latitude member...]   添加地理位置(经度,纬度,名称)

图片.png

2)实例

geoadd china:city 121.47 31.23 shanghai

geoadd china:city 106.50 29.53 chongqing 114.05 22.52 shenzhen 116.38 39.90 beijing


图片.png

两极无法直接添加,一般会下载城市数据,直接通过 Java 程序一次性导入。

有效的经度从 -180 度到 180 度。有效的纬度从 -85.05112878 度到 85.05112878 度。

当坐标位置超出指定范围时,该命令将会返回一个错误。

已经添加的数据,是无法再次往里面添加的。



2geopos 


1)格式

geopos  <key><member> [member...]  获得指定地区的坐标值

图片.png

2)实例

图片.png



3geodist

 

1)格式

geodist<key><member1><member2>  [m|km|ft|mi ]  获取两个位置之间的直线距离

图片.png

2)实例

获取两个位置之间的直线距离

图片.png

单位:

m 表示单位为米[默认值]

km 表示单位为千米。

mi 表示单位为英里。

ft 表示单位为英尺。

如果用户没有显式地指定单位参数, 那么 GEODIST 默认使用米作为单位

 

4georadius

1)格式

georadius<key>< longitude><latitude>radius  m|km|ft|mi   以给定的经纬度为中心,找出某一半径内的元素

图片.png

经度 纬度 距离 单位

 

2)实例

图片.png


本文地址:https://www.jinpeng.work/?id=27
若非特殊说明,文章均属本站原创,转载请注明原链接。
广告3

欢迎 发表评论:

  • 请填写验证码

日历

«    2025年4月    »
123456
78910111213
14151617181920
21222324252627
282930

控制面板

您好,欢迎到访网站!
  查看权限
广告2

退出请按Esc键