受过高等教育的我们都知道,我们所处的任何位置都可以用经度和纬度来标识,经度的范围 -180 到 180,纬度的范围为 -90 到 90。纬度以赤道为界,赤道以南为负数,赤道以北为正数;经度以本初子午线(英国格林尼治天文台)为界,东边为正数,西边为负数。

Redis 在 3.2 版本中增加了 GEO 类型用于存储和查询地理位置,关于 GEO 的命令不多,主要包含以下 6 个:

  1. geoadd:添加地理位置
  2. geopos:查询位置信息
  3. geodist:距离统计
  4. georadius:查询某位置内的其他成员信息
  5. geohash:查询位置的哈希值
  6. zrem:删除地理位置

下面我们分别来看这些命令的使用。

基础使用

添加地理位置

我们先用百度地图提供的经纬度查询工具,地址:

http://api.map.baidu.com/lbsapi/getpoint/index.html

如下图所示:

找了以下 4 个地点,添加到 Redis 中:

  1. 天安门:116.404269,39.913164
  2. 月坛公园:11

查询附近的人——GEO相关推荐

  1. springboot controller 分页查询_Spring Boot实战分页查询附近的人:Redis+GeoHash+Lua

    前言 最近在做社交的业务,用户进入首页后需要查询附近的人: 项目状况:前期尝试业务阶段: 特点: 快速实现(不需要做太重,满足初期推广运营即可) 快速投入市场去运营 收集用户的经纬度: 用户在每次启动 ...

  2. 使用 Redis 如何实现查询附近的人?「视频版」——面试突击 003 期

    面试问题 Redis 如何实现查询附近的人? 涉及知识点 Redis 中如何操作位置信息? GEO 底层是如何实现的? 如何在程序实现查询附近的人? 在实际使用中需要注意哪些问题? 视频答案 视频地址 ...

  3. 面试突击第 3 期 | Redis 如何实现查询附近的人?视频实战版

    这是我的第 33 篇原创文章 作者 | 王磊 (javacn666) 1 面试问题 Redis 如何实现查询附近的人? 2 相关面试问题 Redis 中如何操作位置信息? GEO 底层是如何实现的? ...

  4. springboot controller 分页查询_Spring Boot实战分页查询附近的人: Redis+GeoHash+Lua

    您的支持是我不断创作巨大动力 CSDN博客地址(关注,点赞) 人工智能推荐 GitHub(Star,Fork,Watch) 前言 最近在做社交的业务,用户进入首页后需要查询附近的人: 项目状况:前期尝 ...

  5. SpringBoot使用GeoHash分页查询附近的人:RedisTemplate+GeoHash+Lua

    SpringBoot使用GeoHash分页查询附近的人:RedisTemplate+GeoHash+Lua 架构设计 开发环境 SpringBoot Redis(version>=3.2) Re ...

  6. 使用ElasticSearch完成百万级数据查询附近的人功能

    上一篇文章介绍了ElasticSearch使用Repository和ElasticSearchTemplate完成构建复杂查询条件,简单介绍了ElasticSearch使用地理位置的功能. 这一篇我们 ...

  7. 如何实现查询附近的人?

    查询附近的人或者是附近的商家是一个实用且常用的功能,比如微信中"附近的人"或是美团外卖中"附近商家"等,如下图所示: 那它是如何实现的呢?我们本文就一起来看. ...

  8. php 附近的距离,PHP查询附近的人及其距离的实现方法_PHP

    本文实例讲述了PHP查询附近的人及其距离的实现方法.分享给大家供大家参考,具体如下: array('lat'=>$lat + $dlat,'lng'=>$lng-$dlng), 'righ ...

  9. Spring MongoDB查询附近的人功能实现

    Spring MongoDB简易实现查询附近的人功能 文章目录 1.准备 2.搭建基础结构并编写代码 3.测试接口 1.分别存入3位用户 2.测试使用id查用户 3.使用广东博物馆西门的坐标测试附近有 ...

最新文章

  1. usr share里没有mysql_无法在ubuntu 12.04上安装mysql,找不到消息文件’/usr/share/mysql/errmsg.sys’...
  2. 【Flutter】StatefulWidget 组件 ( 底部导航栏组件 | BottomNavigationBar 组件 | BottomNavigationBarItem 组件 | 选项卡切换 )
  3. 你的创业余额还够么—网易阿里大咖带你领略大数据
  4. android 视频播放滤镜,用openGL ES+MediaPlayer 渲染播放视频+滤镜效果
  5. orcale的rank(排名函数)实例
  6. JavaFX UI控件教程(二十三)之Menu
  7. .net 垃圾回收学习[How To: Use CLR Profiler][翻译学习]【2】
  8. 转:神经网络编程入门
  9. 如果外卖APP想窃听我,有几个骚操作?
  10. 产品原型设计5:移动App原型设计神器 - POP(Prototyping on Paper)
  11. 极品飞车ol服务器连接不稳定,极品飞车OL常见客户端问题有哪些_客户端问题解决方法_3DM网游...
  12. Spiceworks数据统计:Win10发布半年使用情况
  13. STM32驱动SG90舵机与HC_SR04超声波模块
  14. python 判断健在循环字典的第几层_2.关于python的if判断,循环总结。
  15. C#POP3协议实现SSL验证登陆GMAIL
  16. [渝粤教育] 西安邮电大学 金融学A 参考 资料
  17. python做出来的东西怎么让别人看_有趣的Python图片制作之如何用QQ好友头像拼接出里昂...
  18. .obj 和 .mtl文件格式
  19. python面向对象OOP编程(三)-- 同类 不同实例 之间的关联关系
  20. R_Studio(学生成绩)对数据缺失值md.pattern()、异常值分析(箱线图)

热门文章

  1. 加工中心刻字宏程序_FANUC OI系列图书——车床、铣床及加工中心编程
  2. Oracle GoldenGate简介
  3. 在Ubuntu 8.04 LTS(hardy)下安装配置nginx和fastcgi方式的php
  4. wordpress后台无法登录问题
  5. Anaconda配置多spyder多python环境
  6. System Center Technical Preview DPM(2016)对Exchange2016的灾难恢复
  7. Linux学习之FTP服务
  8. Java 解决采集UTF-8网页空格变成问号乱码
  9. 建立丰富多彩的toast的简单实例
  10. python xml转换键值对_Python 提取dict转换为xml/json/table并输出