zoukankan      html  css  js  c++  java
  • Redis6:第六章:(3)Redis6 新数据类型:Geospatial

    一、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、gepdist

      (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)实例

        

  • 相关阅读:
    第六章 装饰模式
    第二章 策略模式
    第一章 简单工厂模式
    HTTPS-post请求
    import&export
    Flask(Jinja2) 服务端模板注入漏洞vulhub
    MySQL UDF提权 过程及注意事项
    centos7 安装jdk1.8.0_271 以及错误解决
    WEB、FTP服务器所有响应码解释(超详细)
    Wolf CMS后台文件上传getshell并提权
  • 原文地址:https://www.cnblogs.com/niujifei/p/15822303.html
Copyright © 2011-2022 走看看