Redis-新数据类型-Geospatia

新数据类型-Geospatia


简介

GEO,Geographic,地理信息的缩写。

该类型就是元素的二维坐标,在地图上就是经纬度。Redis基于该类型,提供了经纬度设置、查询、范围 查询、距离查询、经纬度Hash等常见操作。

常用命令

  1. geoadd key longitude latitude member [longitude latitude member ………]用于存储指定 的地理空间位置,可以将一个或多个经度(longitude)、纬度(latitude)、位置名称(member)添加到 指定的 key 中。

    geoadd longitude 116.405285 39.904989 beijing 将北京的经纬度和名称添加到longitude
    geoadd longitude 104.065735 30.659462 chengdu 121.472644 31.231706 shanghai	将成都和上海的经纬度、名称添加到longitude
    

    在这里插入图片描述

    有效的经度:-180 ~ +180 有效的纬度:-85.05 ~ +85.05,当设置的经度纬度值超过范围会报错。

    两级无法直接添加。

    一般会直接下载城市数据,直接通过 Python 程序直接一次性导入。

  2. geopos key member [member ……]**从给定的 key 里返回所有指定名称(member)的位置(经度 和纬度),不存在的返回 nil。

    geopos longitude shanghai beijing
    

    在这里插入图片描述

  3. geodist key member1 member2 [m|km|ft|mi]用于返回两个给定位置之间的距离。

    geodist longitude shanghai beijing	返回shanghai和beijing之间的距离,单位米
    geodist longitude shanghai beijing km	返回shanghai和chengdu之间的距离,单位千米
    

    在这里插入图片描述

  4. georadius key longitude latitude radius m|km|ft|mi 以给定的经纬度(longitude latitude)为中心, 返回键包含的位置元素当中, 与中心的距离不超过给定最大距离(radius )的 所有位置元素。

    georadius longitude 116 40 1200 km	获取经纬度116 40为中心,在longitude内1200公里
    范围内的所有元素。
    

    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Blue刂

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

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

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

打赏作者

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

抵扣说明:

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

余额充值