草稿——redis学习有关geospatial操作日志

         geospatial集合实例,比如我们点了一份美团外卖,那么我们就需要知道骑手距离我们的距离。我们还需要查看本地的其他外卖店等等,都可以基于geospatial完成。

#geoadd geo集合名 经度 维度 值(设置图的集合,保存形式为 集合名 1.地名 2.经度,维度 )

127.0.0.1:6379[1]> geoadd china:city 116.40 39.90 beijing
(integer) 1
127.0.0.1:6379[1]> geoadd china:city 121.47 31.23 shanghai
(integer) 1

#批量添加操作

127.0.0.1:6379[1]> geoadd china:city 106.50 29.53 chongqing 114.05 22.54 shenzhen
(integer) 2
127.0.0.1:6379[1]> geoadd china:city 120.16 30.24 hangzhou 108.96 34.26 xian
(integer) 2

#geopos geo集合名 地名(根据集合中的地名,获取其经度纬度)

127.0.0.1:6379[1]> geopos china:city beijing
1) 1) "116.39999896287918091"
   2) "39.90000009167092543"
127.0.0.1:6379[1]> geopos china:city hangzhou xian
1) 1) "120.1600000262260437"
   2) "30.2400003229490224"
2) 1) "108.96000176668167114"
   2) "34.25999964418929977"

#geodist geo集合名 地名1 地名2 (单位)(获取地名1与地名2之间的直线距离,默认单位为m,可以修改为km)

127.0.0.1:6379[1]> geodist china:city beijing shanghai
"1067378.7564"
127.0.0.1:6379[1]> geodist china:city beijing shanghai km
"1067.3788"
127.0.0.1:6379[1]> geodist china:city beijing chongqing km
"1464.0708"

#georadius geo集合名 经度 维度 距离 (单位)(以指定经纬度为中心,获取集合中位于该中心指定半径的圆内的所有地名)

127.0.0.1:6379[1]> georadius china:city 110 30 500km
(error) ERR wrong number of arguments for 'georadius' command
127.0.0.1:6379[1]> georadius china:city 110 30 500 km
1) "chongqing"
2) "xian"
127.0.0.1:6379[1]> georadius china:city 110 30 1000 km
1) "chongqing"
2) "xian"
3) "shenzhen"
4) "hangzhou"

#georadius geo集合名 经度 维度 距离 单位 withdist(显示距离) withcoord(显示经纬度) count 数量(指定显示的数量)

127.0.0.1:6379[1]> georadius china:city 110 30 500 km withdist withcoord count 1
1) 1) "chongqing"
   2) "341.9374"
   3) 1) "106.49999767541885376"
      2) "29.52999957900659211"
127.0.0.1:6379[1]> georadius china:city 110 30 500 km withdist withcoord count 1
1) 1) "chongqing"
   2) "341.9374"
   3) 1) "106.49999767541885376"
      2) "29.52999957900659211"
127.0.0.1:6379[1]> georadius china:city 110 30 500 km withdist withcoord count 1
1) 1) "chongqing"
   2) "341.9374"
   3) 1) "106.49999767541885376"
      2) "29.52999957900659211"
127.0.0.1:6379[1]> georadius china:city 110 30 500 km withdist withcoord count 2
1) 1) "chongqing"
   2) "341.9374"
   3) 1) "106.49999767541885376"
      2) "29.52999957900659211"
2) 1) "xian"
   2) "483.8340"
   3) 1) "108.96000176668167114"
      2) "34.25999964418929977"
127.0.0.1:6379[1]> georadius china:city 100 30 km withdist
(error) ERR need numeric radius
127.0.0.1:6379[1]> georadius china:city 100 30 500 km withdist
(empty array)
127.0.0.1:6379[1]> georadius china:city 110 30 500 km withdist
1) 1) "chongqing"
   2) "341.9374"
2) 1) "xian"
   2) "483.8340"
127.0.0.1:6379[1]> georadius china:city 110 30 500 km withcoord
1) 1) "chongqing"
   2) 1) "106.49999767541885376"
      2) "29.52999957900659211"
2) 1) "xian"
   2) 1) "108.96000176668167114"
      2) "34.25999964418929977"
127.0.0.1:6379[1]> georadius china:city 110 30 500 km
1) "chongqing"
2) "xian"
127.0.0.1:6379[1]> GEORADIUSBYMEMBER china:city beijing 1000 km
1) "beijing"
2) "xian"
127.0.0.1:6379[1]> georadiusbymember china:city hangzhou 400 km
1) "hangzhou"
2) "shanghai"
127.0.0.1:6379[1]> geohash china:city beijing chongqing
1) "wx4fbxxfke0"
2) "wm5xzrybty0"
127.0.0.1:6379[1]> geohash china:city beijing
1) "wx4fbxxfke0"

#查询

127.0.0.1:6379[1]> zrange china:city 0 -1
1) "chongqing"
2) "xian"
3) "shenzhen"
4) "hangzhou"
5) "shanghai"
6) "beijing"

#删除

127.0.0.1:6379[1]> zrem china:city xian
(integer) 1
127.0.0.1:6379[1]> zrange china:city 0 -1
1) "chongqing"
2) "shenzhen"
3) "hangzhou"
4) "shanghai"
5) "beijing"

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aristocrat l

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值