redisに基づく位置情報計算(緯度)
2466 ワード
[redisバージョン>=3.2]
緯度情報を書き込む
geoadd key longitude latitude member [longitude latitude member ...]
例
l 1の位置情報をlocation
geoadd location 120.0742 30.2904 l1
に書き込むl 2の位置情報をlocation
geoadd location 121.0742 31.2904 l2
に書き込むクエリー指定keyの緯度
geopos key member [member ...]
例
locationにおけるl 1の位置
geopos location l1
を取得するしゅつりょく
1) 1) "120.07420152425765991"
2) "30.29040071848131532"
2つの場所の計算の例
geodist key member1 member2 [unit]
2つの場所の距離を返し、メートルm(デフォルト)、キロkm、マイルmi、フィートftなどの単位を指定できます.
例
計算l 1 l 2間の距離
geodist location l1 l2
しゅつりょく"146629.3499"
l 1 l 2間の距離km
geodist location l1 l2 km
を計算するしゅつりょく
"146.6293"
中心点半径内の要素の指定
指定中心を座標
georadius key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [ASC|DESC] [COUNT count]
に設定指定された位置要素
georadiusbymember key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [ASC|DESC] [COUNT count]
パラメータ例
取得locationで120.00130.32321を中心とした半径200 km内の要素戻り距離と位置情報を距離昇順に5本の
georadius location 120.0012 30.2321 200 km WITHDIST WITHCOORD ASC COUNT 5
しゅつりょく1) 1) "l1"
2) "9.5517"
3) 1) "120.07420152425765991"
2) "30.29040071848131532"
2) 1) "l2"
2) "156.1170"
3) 1) "121.07419878244400024"
2) "31.29039891026372544"
georadiusbymember location l1 200 km WITHDIST WITHCOORD ASC COUNT 5
しゅつりょく
1) 1) "l1"
2) "0.0000"
3) 1) "120.07420152425765991"
2) "30.29040071848131532"
2) 1) "l2"
2) "146.6293"
3) 1) "121.07419878244400024"
2) "31.29039891026372544"
削除locationでの指定袁術
zrem key member [member ...]
例locationのl 3要素
zrem location l3
の削除