Geospatial: 提供有关地理信息相关的命令。
tian@yuan:/usr/local/bin$ redis-cli
127.0.0.1:6379> geoadd k1 121.47 31.23 shanghai --- 向k1添加经度121.47,纬度31.23名称是shanghai的元素。
(integer) 1
127.0.0.1:6379> geoadd k1 106.50 29.53 chongqin 114.05 22.52 shenzhen 116.38 39.90 beijing ---- 添加多个元素到k1中。
(integer) 3
127.0.0.1:6379> geopos k1 chongqing
1) (nil)
127.0.0.1:6379> geopos k1 chongqin --- 获取k1中名称是chongqin的经度和纬度值
1) 1) "106.49999767541885376" --- 经度
2) "29.52999957900659211" --- 纬度
127.0.0.1:6379> geodist k1 chongqin shenzheng km
(nil)
127.0.0.1:6379> geodist k1 chongqin shenzhen km --- 计算k1中chongqin到shenzhen之间的距离[km -千米,m-米,ft-英尺,mi-英里],如果没有指定,默认单位是米。
"1084.4275"
127.0.0.1:6379> geodist k1 chongqin shenzhen m
"1084427.5441"
127.0.0.1:6379> geodist k1 chongqin shenzhen ft
"3557833.1499"
127.0.0.1:6379> geodist k1 chongqin shenzhen mi
"673.8337"
127.0.0.1:6379> georadius k1 110 30 2000 km --- 计算k1中的哪些值在经度110,纬度30,半径是2000KM范围内。
1) "chongqin"
2) "shenzhen"
3) "shanghai"
4) "beijing"
127.0.0.1:6379> georadius k1 110 30 1000 km
1) "chongqin"
2) "shenzhen"
127.0.0.1:6379>