高级数据类型-Geo|学习笔记

简介: 快速学习高级数据类型-Geo

开发者学堂课程【Redis 入门到精通(进阶篇):高级数据类型-Geo】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/765/detail/13446


高级数据类型-Geo

 

本章主要说明 Geo 以及它的操作方法与流程

 

,Geo 的说明及操作

1.举例与 Geo 相关的一些火热的生活服务类软件

社交类微信/陌陌

外卖类美团/饿了么

移动类携程/马蜂窝

导航类高德/百度

等只要和线下相关是都可以涉及到的Geo叫做地理位置。换句话说,就是告诉一个地理位置,再告诉另外一个地理位置,就可以做一些操作计算

2.GEO 类型的基本操作

(1).添加坐标点

geoadd key longitude latitude member [longitude latitude member ...]

(2).获取坐标点

geopos key member [member .--]

(3).计算坐标点距离

geodist key memberl member2 [unit]

具体来说明以上操作假定一个地图,有一个点,这边有一个点,就可以求他们两个之间的关系,比如说距离,范围等等的一系列的东西。这需要知道两个信息第一是横坐标第二是纵坐标。简单一点,叫做经纬度。通过这种形式,可以快速的去做我们的点与点之间的这种关联关系操作,就是所谓的记忆人物。它的应用场景也是非常的单一,具体的操作。要想能够进行计算,最基本的,能把数据给放进去,二数据能取出来,三能做最基本的计算,比如关于两个点的坐标,如果是一个非常光滑的球体的话,这个坐标计算是准的,但是如果说现在在山下到山上,这个有距离没有是有距离的,他只算水平位置的距离,不算垂直位置,换句话说不算高度,所以计算出来的距离。只能按照水平位置去想,不能说从这个点到那个点才算走好长时间

以下为操作过程中运用到的代码

127.0.0.1:6379>flushdb

OK

127.0.0.1:6379> geoadd geos 1 1 a(integer)1

127.0.0.1:6379> geoadd geos 2 2 b

(integer)1

127.0.0.1:6379> geopos geos1)1)"0.99999994039535522"

2)"0.99999945914297683"

127.0.0.1:6379> geodist geos a b"157270.0561"

127.0.0.1:6379> geodist geos a b m*157270.0561"

127.0.0.1:6379> geodist geos a b km

"157.2701"

127.0.0.1:6379>

(5).根据坐标求范围内的数据

georadius key longitude latitude radius mlkmlftlmi [withcoord] [withdist] [withhash] [count count]

(6).根据点求范围内数据

georadiusbymember key member radius ml kml ft| mi [withcoord] [withdist] [withhash] [count count]

(7).获取指定点对应的坐标 hash 

geohash key member [member ...]

以下为操作流程中所运用到的代码

127.0.0.1:6379>flushdb

OK

127.0.0.1:6379> geoadd geos 1 1 1,1

(integer)1

127.0.0.1:6379> geoadd geos 1 2 1,2

(integer)1

127.0.0.1:6379> geoadd geos 1 3 1,3

(integer)1

127.0.0.1:6379> geoadd geos 2 1 2.1

(integer)1

1270.0.1:6379> geoadd geos 2 2 2,2

(integer)1

127.0.0.1:6379> geoadd geos 2 3 2,3

(integer)1

127.0.0.1:6379> geoadd geos 3 1 3,1

(integer)1

127.0.0.1:6379> geoadd geos 3 2 3,2

(integer)1

127.0.0.1:6379> geoadd geos 3 3 3.3

(integer)1

127.0.0.1:6379> geoadd geos 5 5 5,5

(integer)1

127 .0.0.1:6379> georadiusbymember geos 2.2 180 km

0.1:6379> georadiusbymember geos 2,2 120 km [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [AsCIDESC]

相关文章
|
6月前
|
存储 编译器 程序员
C++基础篇之什么是数据类型
C++基础篇之什么是数据类型
|
8月前
|
C#
57【C#基础】C#数据类型总结
【C#基础】C#数据类型总结
43 0
|
9月前
|
C#
C#基础Ⅲ-数据类型
C#基础Ⅲ-数据类型
|
存储 安全 Java
【C#基础】C# 数据类型总结
编程语言 C# 数据类型的介绍 。
62 0
【C#基础】C# 数据类型总结
|
SQL 关系型数据库 MySQL
数据类型介绍2|学习笔记
快速学习数据类型介绍2
数据类型介绍2|学习笔记
|
SQL 关系型数据库 MySQL
数据类型介绍1 | 学习笔记
快速学习数据类型介绍1
数据类型介绍1 | 学习笔记
|
存储 缓存 监控
数据类型-数据类型简介| 学习笔记
快速学习数据类型-数据类型简介
74 0
|
存储 运维 NoSQL
高级数据类型-Bitmaps|学习笔记
快速学习高级数据类型-Bitmaps
52 0
高级数据类型-Bitmaps|学习笔记
|
存储 NoSQL 搜索推荐
索引的概述和类型 | 学习笔记
快速学习 索引的概述和类型
64 0
索引的概述和类型 | 学习笔记
|
存储 PHP 数据库
数据类型| 学习笔记
快速学习数据类型。
60 0