日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Redis教程:RedisGEO

Redis GEO

Redis GEO 主要用于存儲地理位置信息,并對存儲的信息進(jìn)行操作,該功能在 Redis 3.2 版本新增。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、安陸網(wǎng)絡(luò)推廣、微信小程序開發(fā)、安陸網(wǎng)絡(luò)營銷、安陸企業(yè)策劃、安陸品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供安陸建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com

Redis GEO 操作方法有:

  • geoadd:添加地理位置的坐標(biāo)。
  • geopos:獲取地理位置的坐標(biāo)。
  • geodist:計(jì)算兩個位置之間的距離。
  • georadius:根據(jù)用戶給定的經(jīng)緯度坐標(biāo)來獲取指定范圍內(nèi)的地理位置集合。
  • georadiusbymember:根據(jù)儲存在位置集合里面的某個地點(diǎn)獲取指定范圍內(nèi)的地理位置集合。
  • geohash:返回一個或多個位置對象的 geohash 值。

geoadd

geoadd 用于存儲指定的地理空間位置,可以將一個或多個經(jīng)度(longitude)、緯度(latitude)、位置名稱(member)添加到指定的 key 中。

geoadd 語法格式如下:

GEOADD key longitude latitude member [longitude latitude member ...]

以下實(shí)例中 key 為 Sicily,Palermo 和 Catania 為位置名稱 :

實(shí)例

redis
> GEOADD Sicily
13.361389
38.115556
"Palermo"
15.087269
37.502669
"Catania"


(integer
)
2

redis
> GEODIST Sicily Palermo Catania


"166274.1516"

redis
> GEORADIUS Sicily
15
37
100 km


1
)
"Catania"

redis
> GEORADIUS Sicily
15
37
200 km


1
)
"Palermo"


2
)
"Catania"

redis
>

geopos

geopos 用于從給定的 key 里返回所有指定名稱(member)的位置(經(jīng)度和緯度),不存在的返回 nil。

geopos 語法格式如下:

GEOPOS key member [member ...]

實(shí)例

redis
> GEOADD Sicily
13.361389
38.115556
"Palermo"
15.087269
37.502669
"Catania"


(integer
)
2

redis
> GEOPOS Sicily Palermo Catania NonExisting


1
)
1
)
"13.36138933897018433"

   
2
)
"38.11555639549629859"


2
)
1
)
"15.08726745843887329"

   
2
)
"37.50266842333162032"


3
)
(nil
)

redis
>

geodist

geodist 用于返回兩個給定位置之間的距離。

geodist 語法格式如下:

GEODIST key member1 member2 [m|km|ft|mi]

member1 member2 為兩個地理位置。

最后一個距離單位參數(shù)說明:

  • m :米,默認(rèn)單位。
  • km :千米。
  • mi :英里。
  • ft :英尺。
  • > 計(jì)算 Palermo 與 Catania 之間的距離:

    實(shí)例

    redis
    > GEOADD Sicily
    13.361389
    38.115556
    "Palermo"
    15.087269
    37.502669
    "Catania"


    (integer
    )
    2

    redis
    > GEODIST Sicily Palermo Catania


    "166274.1516"

    redis
    > GEODIST Sicily Palermo Catania km


    "166.2742"

    redis
    > GEODIST Sicily Palermo Catania mi


    "103.3182"

    redis
    > GEODIST Sicily Foo Bar


    (nil
    )

    redis
    >

    georadius、georadiusbymember

    georadius 以給定的經(jīng)緯度為中心, 返回鍵包含的位置元素當(dāng)中, 與中心的距離不超過給定最大距離的所有位置元素。

    georadiusbymember 和 GEORADIUS 命令一樣, 都可以找出位于指定范圍內(nèi)的元素, 但是 georadiusbymember 的中心點(diǎn)是由給定的位置元素決定的, 而不是使用經(jīng)度和緯度來決定中心點(diǎn)。

    georadius 與 georadiusbymember 語法格式如下:

    GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] [STORE key] [STOREDIST key]
    GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] [STORE key] [STOREDIST key]

    參數(shù)說明:

    • m :米,默認(rèn)單位。
    • km :千米。
    • mi :英里。
    • ft :英尺。
    • WITHDIST: 在返回位置元素的同時, 將位置元素與中心之間的距離也一并返回。
    • WITHCOORD: 將位置元素的經(jīng)度和緯度也一并返回。
    • WITHHASH: 以 52 位有符號整數(shù)的形式, 返回位置元素經(jīng)過原始 geohash 編碼的有序集合分值。 這個選項(xiàng)主要用于底層應(yīng)用或者調(diào)試, 實(shí)際中的作用并不大。
    • COUNT 限定返回的記錄數(shù)。
    • ASC: 查找結(jié)果根據(jù)距離從近到遠(yuǎn)排序。
    • DESC: 查找結(jié)果根據(jù)從遠(yuǎn)到近排序。

    georadius 實(shí)例:

    實(shí)例

    redis
    > GEOADD Sicily
    13.361389
    38.115556
    "Palermo"
    15.087269
    37.502669
    "Catania"


    (integer
    )
    2

    redis
    > GEORADIUS Sicily
    15
    37
    200 km WITHDIST


    1
    )
    1
    )
    "Palermo"

       
    2
    )
    "190.4424"


    2
    )
    1
    )
    "Catania"

       
    2
    )
    "56.4413"

    redis
    > GEORADIUS Sicily
    15
    37
    200 km WITHCOORD


    1
    )
    1
    )
    "Palermo"

       
    2
    )
    1
    )
    "13.36138933897018433"

         
    2
    )
    "38.11555639549629859"


    2
    )
    1
    )
    "Catania"

       
    2
    )
    1
    )
    "15.08726745843887329"

         
    2
    )
    "37.50266842333162032"

    redis
    > GEORADIUS Sicily
    15
    37
    200 km WITHDIST WITHCOORD


    1
    )
    1
    )
    "Palermo"

       
    2
    )
    "190.4424"

       
    3
    )
    1
    )
    "13.36138933897018433"

         
    2
    )
    "38.11555639549629859"


    2
    )
    1
    )
    "Catania"

       
    2
    )
    "56.4413"

       
    3
    )
    1
    )
    "15.08726745843887329"

         
    2
    )
    "37.50266842333162032"

    redis
    >

    georadiusbymember 實(shí)例:

    實(shí)例

    redis
    > GEOADD Sicily
    13.583333
    37.316667
    "Agrigento"


    (integer
    )
    1

    redis
    > GEOADD Sicily
    13.361389
    38.115556
    "Palermo"
    15.087269
    37.502669
    "Catania"


    (integer
    )
    2

    redis
    > GEORADIUSBYMEMBER Sicily Agrigento
    100 km


    1
    )
    "Agrigento"


    2
    )
    "Palermo"

    redis
    >

    geohash

    Redis GEO 使用 geohash 來保存地理位置的坐標(biāo)。

    geohash 用于獲取一個或多個位置元素的 geohash 值。

    geohash 語法格式如下:

    GEOHASH key member [member ...]

    實(shí)例:

    實(shí)例

    redis
    > GEOADD Sicily
    13.361389
    38.115556
    "Palermo"
    15.087269
    37.502669
    "Catania"


    (integer
    )
    2

    redis
    > GEOHASH Sicily Palermo Catania


    1
    )
    "sqc8b49rny0"


    2
    )
    "sqdtr74hyu0"

    redis
    >


分享標(biāo)題:創(chuàng)新互聯(lián)Redis教程:RedisGEO
鏈接分享:http://www.dlmjj.cn/article/dpsosgd.html