Redis学习笔记(三)

九、geospatial 地理位置

geoadd

127.0.0.1:6379> geoadd china:city 116.41 39.9 beijing #新增
(integer) 1
127.0.0.1:6379> geoadd china:city 121.43 34.50 shanghai
(integer) 1
127.0.0.1:6379> geoadd china:city 120.20 30.26 hangzhou 114.06 22.61 shenzhen
(integer) 2

geopos

127.0.0.1:6379> geopos china:city beijing   #获得
1) 1) "116.40999823808670044"
   2) "39.90000009167092543"
127.0.0.1:6379> geopos china:city beijing shanghai
1) 1) "116.40999823808670044"
   2) "39.90000009167092543"
2) 1) "121.42999917268753052"
   2) "34.49999971716130887"

geodist

#两人之间的距离
127.0.0.1:6379> geodist china:city beijing shanghai km
"747.0616"
127.0.0.1:6379> geodist china:city beijing shanghai
"747061.6379"
127.0.0.1:6379> geodist china:city shanghai hangzhou km
"485.5319"
127.0.0.1:6379> georadius china:city 110 30 1000 km
1) "shenzhen"
2) "hangzhou"

georadius

#我附近的人 经度110 纬度30 距离1000 withcoord坐标 withdist距离 count限制多少个
127.0.0.1:6379> georadius china:city 110 30 1000 km withcoord
1) 1) "shenzhen"
   2) 1) "114.06000226736068726"
      2) "22.61000043215502586"
2) 1) "hangzhou"
   2) 1) "120.20000249147415161"
      2) "30.25999927289620928"
127.0.0.1:6379> georadius china:city 110 30 1000 km withdist withcoord
1) 1) "shenzhen"
   2) "916.0193"
   3) 1) "114.06000226736068726"
      2) "22.61000043215502586"
2) 1) "hangzhou"
   2) "981.3209"
   3) 1) "120.20000249147415161"
      2) "30.25999927289620928"
127.0.0.1:6379> georadius china:city 110 30 1000 km withdist withcoord count 1
1) 1) "shenzhen"
   2) "916.0193"
   3) 1) "114.06000226736068726"
      2) "22.61000043215502586"

geohash

#hash字符串
127.0.0.1:6379> geohash china:city beijing shanghai
1) "wx4fbzx4me0"
2) "wwnk70w9h40"

zrange zrem

#GEO底层是Zset
127.0.0.1:6379> zrange china:city 0 -1
1) "shenzhen"
2) "hangzhou"
3) "shanghai"
4) "beijing"
127.0.0.1:6379> zrem china:city shanghai
(integer) 1
127.0.0.1:6379> zrange china:city 0 -1
1) "shenzhen"
2) "hangzhou"
3) "beijing"

十、Hyperloglog

基数统计

0.81错误率 统计UV工作。

PFadd PFCOUNT PFMERGE

127.0.0.1:6379> PFadd mykey a b c d e f g h i j k  #创建第一组元素
(integer) 1
127.0.0.1:6379> PFCOUNT mykey  #统计第一组元素数量
(integer) 11
127.0.0.1:6379> PFadd mykey2 h i j e a l o m c p  #创建第二组元素
(integer) 1 
127.0.0.1:6379> PFCOUNT mykey2  #统计第二组元素数量
(integer) 10
127.0.0.1:6379> PFMERGE mykey3 mykey mykey2 #合并两组元素
OK
127.0.0.1:6379> PFCOUNT mykey3  #统计第三组元素数量
(integer) 15

十一、Bitmaps

位存储

1 0

统计用户信息,活跃,不活跃。登录,不登录。

setbit 记录周一到周日的打卡情况

127.0.0.1:6379> setbit mybit 0 1
(integer) 0
127.0.0.1:6379> setbit mybit 1 0
(integer) 0
127.0.0.1:6379> setbit mybit 2 1
(integer) 0
127.0.0.1:6379> setbit mybit 3 1
(integer) 0
127.0.0.1:6379> setbit mybit 4 0
(integer) 0
127.0.0.1:6379> setbit mybit 5 1
(integer) 0
127.0.0.1:6379> setbit mybit 6 0
(integer) 0

getbit 获取

127.0.0.1:6379> getbit mybit 5
(integer) 1
127.0.0.1:6379> getbit mybit 2
(integer) 1
127.0.0.1:6379> getbit mybit 0
(integer) 1
127.0.0.1:6379> getbit mybit 1
(integer) 0

bitcount 打卡天数

127.0.0.1:6379> bitcount mybit
(integer) 4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值