当前位置:   article > 正文

redis-BitMap(位图)使用方法

redis-BitMap(位图)使用方法

一,BitMap介绍

使用位存储,信息状态只有 0 和 1

Bitmap是一串连续的2进制数字(0或1),每一位所在的位置为偏移(offset),在bitmap上可执行AND,OR,XOR,NOT以及其它位操作。

二 ,应用场景

签到统计、状态统计

三,命令

  1. 命令 描述
  2. setbit key offset value 为指定key的offset位设置值
  3. getbit key offset 获取offset位的值
  4. bitcount key [start end] 统计字符串被设置为1的bit数,也可以指定统计范围按字节
  5. bitop operration destkey key[key…] 对一个或多个保存二进制位的字符串 key 进行位元操作,并将结果保存到 destkey 上。
  6. BITPOS key bit [start] [end] 返回字符串里面第一个被设置为1或者0的bit位。start和end只能按字节,不能按位

四,应用场景

  1. ------------setbit--getbit--------------
  2. 127.0.0.1:6379> setbit sign 0 1 # 设置sign的第0位为 1
  3. (integer) 0
  4. 127.0.0.1:6379> setbit sign 2 1 # 设置sign的第2位为 1 不设置默认 是0
  5. (integer) 0
  6. 127.0.0.1:6379> setbit sign 3 1
  7. (integer) 0
  8. 127.0.0.1:6379> setbit sign 5 1
  9. (integer) 0
  10. 127.0.0.1:6379> type sign
  11. string
  12. 127.0.0.1:6379> getbit sign 2 # 获取第2位的数值
  13. (integer) 1
  14. 127.0.0.1:6379> getbit sign 3
  15. (integer) 1
  16. 127.0.0.1:6379> getbit sign 4 # 未设置默认是0
  17. (integer) 0
  18. -----------bitcount----------------------------
  19. 127.0.0.1:6379> BITCOUNT sign # 统计sign中为1的位数
  20. (integer) 4
  21. # 1.setbit key offset value
  22. setbit sign 0 1 #周一打卡
  23. setbit sign 1 0 #周二未打卡
  24. # 2.getbit key offset
  25. getbit sign 1 #查看周二是否打卡
  26. # 3.bitcount key
  27. bitcount sign #统计打卡了几次
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/381968
推荐阅读
相关标签
  

闽ICP备14008679号