【Reids 学习】新数据类型 Geospatial 学习

一、简介

Redis 3.2 中增加了对GEO类型的支持。GEO,Geographic,地理信息的缩写。

该类型,就是元素的2维坐标,在地图上就是经纬度。

redis基于该类型,提供了经纬度设置,查询,范围查询,距离查询,经纬度Hash等常见操作。

二、命令

1. geoadd

(1)格式

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

在这里插入图片描述
(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

在这里插入图片描述两极无法直接添加,一般会下载城市数据,直接通过 Java 程序一次性导入。

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

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

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

2. geopos

(1)格式

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

在这里插入图片描述
(2)实例
在这里插入图片描述

3. geodist

(1)格式

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

在这里插入图片描述
(2)实例
获取两个位置之间的直线距离
在这里插入图片描述

单位:
m 表示单位为米[默认值]。
km 表示单位为千米。
mi 表示单位为英里。
ft 表示单位为英尺。
如果用户没有显式地指定单位参数, 那么 GEODIST 默认使用米作为单位

4. georadius

(1)格式

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

在这里插入图片描述
经度 纬度 距离 单位

(2)实例
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

南淮北安

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

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

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

打赏作者

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

抵扣说明:

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

余额充值