redis字符串类型键的二进制操作

  • 命令名称:setbit
  • 语法:setbit key offset value
  • 功能:1)对key所存储的字符串值,设置或清除指定偏移量上的位(bit),位的设置或清除取决于value参数,可以是0也可以是1。2)字符串会进行伸展(grown)以确保它可以将value保存在指定的偏移量上。当字符串值进行伸展时,空白位置以0填充。offset参数必须大于或等于0,小于2^32(bit映射被限制在512MB之内)
  • 返回值:1)当key不存在时,自动生成一个新的字符串值。2)指定偏移量原来存储的位。

 

  • 命令名称:getbit
  • 语法:getbit key offset
  • 功能:1)对key所存储的字符串值,获取指定偏移量上的位(bit)
  • 返回值:1)当offset比字符串值的长度大,或者key不存在时,返回0。2)字符串值偏移量上的位(bit)

 

  • 命令名称:bitcount
  • 语法:bitcount key [start] [end]
  • 注意:start和end是一个字节,一个字节为8位
  • 功能:1)计算给定字符串中,被设置为1的比特位的数量。2)一般情况下,给定的整个字符串都会被进行计数,通过指定额外的start或end参数,可以让计数只在特定的位上进行。
  • 返回值:1)不存在的key被当成是空字符串来处理,因此对一个不存在的key进行bitcount操作,结果为0/被设置为1的位的数量

 

  • 命令名称:bitop
  • 语法:bitop operation destkey key [key……]
  • 功能:1)对一个或多个保存二进制位的字符串key进行位元操作,并将结果保存到destkey上。
  • OPERATION:1)可以是and(与)、or(或)、not(非)、xor(异或)这四种操作中的任意一种。2)除了not操作外,其他操作都可以接受一个或多个key作为输入
  • 注意:1)当bitop处理不同长度的字符串时,较短的那个字符串所缺少的额部分会被看做0.空的key也被看做是包含0的字符串序列
  • 返回值:1)保存到destkey的字符串的长度,和输入key中最长的字符串长度相等。

 

  • 命令名称:bitpos
  • 语法:bitpos key bit [start] [end]
  • 注意:start和end是一个字节,一个字节为8位
  • 功能:1)返回字符串里面第一个被设置为1或者0的bit位。
  • 返回值:1)命令返回字符串里面第一个被设置为1或者0的bit位。2)如果我们在空字符串或者0字节的字符串里面查找bit为1的内容,那么结果将返回-1。

猜你喜欢

转载自www.cnblogs.com/lxhyty/p/11364557.html
0条评论
添加一条新回复