使用位存储,信息状态只有 0 和 1。
这个适合哪种记录某些状态只有两种状态的,比如说成绩及没及格,是男是女(不考虑跨性别的),上班迟没迟到,是或者不是这种。
Bitmap是一串连续的2进制数字(0或1),每一位所在的位置为偏移(offset),在bitmap上可执行AND,OR,XOR,NOT以及其它位操作。
命令 | 描述 |
---|---|
setbit key offset value | 为指定key的offset位设置值 |
getbit key offset | 获取offset位的值 |
bitcount key [start end] | 统计字符串被设置为1的bit数,也可以指定统计范围按字节 |
bitop operration destkey key[key…] | 对一个或多个保存二进制位的字符串 key 进行位元操作,并将结果保存到 destkey 上。 |
BITPOS key bit [start] [end] | 返回字符串里面第一个被设置为1或者0的bit位。start和end只能按字节,不能按位 |
> setbit chidao_record 0 0
0
> set
ERR wrong number of arguments for 'set' command
> setbit chidao_record 1 0
0
> setbit chidao_record 2 0
0
> setbit chidao_record 3 1
0
> type chidao_record
string
> getbit chidao_record 3
1
> bitcount chidao_record #这里是统计的为1的记录
1