欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis之GEO存儲地理位置信息的使用

 更新時間:2021年10月20日 10:55:16   作者:空城1995  
在外賣軟件中的附近的美食店鋪、外賣小哥的距離,打車軟件附近的車輛,交友軟件中附近的小姐姐。我們都可以利用redis的GEO地理位置計算得出。本文就來詳細的介紹一下

在外賣軟件中的附近的美食店鋪、外賣小哥的距離,打車軟件附近的車輛,交友軟件中附近的小姐姐。我們都可以利用redis的GEO地理位置計算得出。

1、Redis 的 Geo 是在 3.2 版本才有的

2、使用 geohash 保存地理位置的坐標

3、使用有序集合(zset)保存地理位置的集合

常用API

命令 描述
geoadd 增加某個地理位置的坐標
geopos 獲取某個地理位置的坐標
geodist 獲取某個地理位置的坐標
georadius 根據給定地理位置坐標獲取指定范圍內的地理位置集合
georadiusbymember 根據給定地理位置獲取指定范圍內的地理位置集合
geohash 獲取某個地理位置的 geohash 值

geoadd

API:geo key longitude latitude member [longitude latitude member ..]

功能:增加地理位置信息

演示:

127.0.0.1:6379> geoadd cities:locations 116.28 39.55 beijing
(integer) 1
127.0.0.1:6379> geoadd cities:locations 116.28 39.55 beijing
(integer) 0
127.0.0.1:6379> geoadd cities:locations 117.12 39.08 tianjin
(integer) 1
127.0.0.1:6379> geoadd cities:locations 114.29 38.02 shijiazhuang 118.01 39.38 tangshan 115.29 38.51 baoding
(integer) 3

geopos

API:geopos key member [member]

功能:增加地理位置信息

演示:

127.0.0.1:6379>  geopos cities:locations beijing
1) 1) "116.28000229597091675"
   2) "39.5500007245470826"
127.0.0.1:6379>  geopos cities:locations beijing tianjin
1) 1) "116.28000229597091675"
   2) "39.5500007245470826"
2) 1) "117.12000042200088501"
   2) "39.0800000535766543"

geodist

API:geodsit key member member1 member2

功能:獲取兩個地理位置的距離

#unit:m(米)、km(千米)、mi(英里)、ft(尺)

演示:

127.0.0.1:6379> geodist cities:locations beijing tianjin km
"89.2061"

georadiusbymember

API:georadiusbymember key member raidusm|km|ft|mi [withcoord][withdist][withhash][COUNT count][asc|desc][store key][storedist key]

功能:獲取兩個地理位置的距離

參數:

  • withcoord:返回結果中包含經緯度
  • withdist:返回結果中包含距離中心節(jié)點位置
  • withhash:返回結果中包含geohash
  • COUNT count:指定返回結果的數量
  • asc|desc:返回結果按照距離中心節(jié)點距離做升序或者倒序排列
  • store key:將返回結果的地理位置信息保存到制定key
  • storedist key:將返回結果距離中心節(jié)點的距離保存到指定鍵

演示:

查詢距離北京550千米以內的所有城市,并按距離升序排列

127.0.0.1:6379> georadiusbymember cities:locations beijing 550 km  withdist asc
1) 1) "beijing"
   2) "0.0000"
2) 1) "tianjin"
   2) "89.2061"
3) 1) "baoding"
   2) "143.8646"
4) 1) "tangshan"
   2) "149.7479"
5) 1) "shijiazhuang"
   2) "242.3263"

geohash

API:geopos key member [member]

功能:獲取某個地方的哈希值

演示:

127.0.0.1:6379> geohash cities:locations beijing
1) "wx48ypbe2q0"

到此這篇關于Redis之GEO存儲地理位置信息的使用的文章就介紹到這了,更多相關Redis GEO存儲地理位置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • idea中如何去掉不想commit的文件

    idea中如何去掉不想commit的文件

    這篇文章主要介紹了idea中如何去掉不想commit的文件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 詳解Java如何獲取文件編碼格式

    詳解Java如何獲取文件編碼格式

    這篇文章主要介紹了詳解Java如何獲取文件編碼格式,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • 基于編譯虛擬機jvm—openjdk的編譯詳解

    基于編譯虛擬機jvm—openjdk的編譯詳解

    下面小編就為大家分享一篇基于編譯虛擬機jvm—openjdk的編譯詳解,具有很好的參考價值,希望對大家有所幫助
    2017-12-12
  • SpringBoot Test及注解的使用詳解

    SpringBoot Test及注解的使用詳解

    這篇文章主要介紹了SpringBoot Test及注解的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java實現(xiàn)每日給女友微信發(fā)送早安信息

    Java實現(xiàn)每日給女友微信發(fā)送早安信息

    這篇文章主要為大家詳細介紹了Java如何實現(xiàn)每日給女友微信發(fā)送早安等微信信息,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以了解一下
    2022-12-12
  • Java設計模式七大原則之開閉原則詳解

    Java設計模式七大原則之開閉原則詳解

    開閉原則,又稱為OCP原則,即一個軟件實體如類,模塊和函數應該對擴展開放,對修改關閉。本文將詳細介紹Java設計模式七大原則之一的開閉原則,需要的可以參考一下
    2022-02-02
  • SpringSecurity安全管理開發(fā)過程

    SpringSecurity安全管理開發(fā)過程

    Spring?是一個非常流行和成功的?Java?應用開發(fā)框架,Spring?Security?基于?Spring?框架,提供了一套?Web?應用安全性的完整解決方案,這篇文章主要介紹了SpringSecurity安全管理,需要的朋友可以參考下
    2024-07-07
  • Java中關于Collections集合工具類的詳細介紹

    Java中關于Collections集合工具類的詳細介紹

    Java提供了一個操作Set、List和Map等集合的工具類:Collections,該工具提供了大量方法對集合元素進行排序、查詢和修改等操作,還提供了將集合對象設置為不可變、對集合對象實現(xiàn)同步控制等方法
    2021-09-09
  • Java歸并排序算法代碼實現(xiàn)

    Java歸并排序算法代碼實現(xiàn)

    歸并(Merge)排序法是將兩個(或兩個以上)有序表合并成一個新的有序表,即把待排序序列分為若干個子序列,每個子序列是有序的,下面這篇文章主要給大家介紹了關于Java歸并排序算法的相關資料,需要的朋友可以參考下
    2024-03-03
  • IntelliJ?IDEA設置JVM運行參數的圖文介紹

    IntelliJ?IDEA設置JVM運行參數的圖文介紹

    這篇文章主要介紹了IntelliJ?IDEA設置JVM運行參數的方法,包括配置方式及優(yōu)先級,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04

最新評論