文章目錄 1、查看redis是否啟動 2、通過客戶端連接redis 3、切換到db5數據庫 4、將地理位置信息(經度和緯度)添加到 Redis 的鍵(key)中 5、升序返回有序集key,讓分數一起和值返回的結果集 6、獲取指定地區的坐標 7、計算兩地之間的直接距離 8、查詢某個地理位置附近的其他位置 9、在指定元素周圍查找其他元素
1、查看redis是否啟動
[ root@localhost ~]
root 4270 1 0 05:51 ? 00:00:37 /usr/local/redis/bin/redis-server *:6379
root 9104 6858 0 12 :42 pts/0 00:00:00 grep --color = auto redis
[ root@localhost ~]
2、通過客戶端連接redis
[ root@localhost ~]
127.0 .0.1:6379 > ping
PONG
127.0 .0.1:6379 >
3、切換到db5數據庫
127.0 .0.1:6379 > select 5
OK
127.0 .0.1:6379[ 5 ] >
4、將地理位置信息(經度和緯度)添加到 Redis 的鍵(key)中
GEOADD 是 Redis 的一個命令,用于將地理位置信息(經度和緯度)添加到 Redis 的鍵(key)中。這些位置信息通常以有序集合(sorted set)的形式存儲,每個位置信息都與一個成員(member)相關聯。
百度地圖拾取坐標系統
4.1、添加大江商廈
127.0 .0.1:6379[ 5 ] > geoadd p1 121.243007 31.022285 sh_djss
( integer) 1
127.0 .0.1:6379[ 5 ] >
4.2、添加西部硅谷
127.0 .0.1:6379[ 5 ] > geoadd p1 113.844461 22.632091 sz_xbgg
( integer) 1
127.0 .0.1:6379[ 5 ] >
5、升序返回有序集key,讓分數一起和值返回的結果集
127.0 .0.1:6379[ 5 ] > zrange p1 0 -1 withscores
1 ) "sz_xbgg"
2 ) "4046523425752402"
3 ) "sh_djss"
4 ) "4054745256311612"
127.0 .0.1:6379[ 5 ] >
6、獲取指定地區的坐標
127.0 .0.1:6379[ 5 ] > zrange p1 0 -1 withscores
1 ) "sz_xbgg"
2 ) "4046523425752402"
3 ) "sh_djss"
4 ) "4054745256311612"
127.0 .0.1:6379[ 5 ] > geopos p1 sh_djss
1 ) 1 ) "121.24300628900527954" 2 ) "31.02228624491348086"
127.0 .0.1:6379[ 5 ] > geopos p1 sz_xbgg
1 ) 1 ) "113.84445995092391968" 2 ) "22.63209052705867208"
127.0 .0.1:6379[ 5 ] >
7、計算兩地之間的直接距離
127.0 .0.1:6379[ 5 ] > geodist p1 sh_djss sz_xbgg km
"1186.7119"
127.0 .0.1:6379[ 5 ] >
8、查詢某個地理位置附近的其他位置
127.0 .0.1:6379[ 5 ] > georadius p1 121.243007 31.022285 1200 km
1 ) "sz_xbgg"
2 ) "sh_djss"
127.0 .0.1:6379[ 5 ] >
9、在指定元素周圍查找其他元素
127.0 .0.1:6379[ 5 ] > georadiusbymember p1 sh_djss 1200 km
1 ) "sz_xbgg"
2 ) "sh_djss"
127.0 .0.1:6379[ 5 ] >