教程 > Redis教程 > Redis 命令 阅读:20

Redis SETBIT 命令

Redis SETBIT 命令

返回 Redis字符串(string)


Redis Setbit 命令用于对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。

根据值 value 是 1 或 0 来决定设置或清除位 bit。当 key 不存在时会创建一个新的字符串。

当字符串不够长时,字符串的长度将增大,以确保它可以在offset位置存储值。

offset 参数需要大于等于0,并且小于 232 (bitmaps 最大 512MB)。

当值字符串变长时,添加的 bit 会被设置为 0。

注意: 当设置的是最后一位 bit (offset 等于 232 -1),并且存储在 key 中的字符串还没有存储一个字符串值,或者存储的是一个短的字符串值时,Redis 需要分配所有的中间内存,这会阻塞 Redis 服务器一段时间。

语法

redis Setbit 命令基本语法如下:

redis 127.0.0.1:6379> Setbit KEY_NAME OFFSET

可用版本

>= 2.2.0

返回值

指定偏移量原来储存的位。

示例

redis 127.0.0.1:6379> SETBIT bit 10086 1
(integer) 0

redis 127.0.0.1:6379> GETBIT bit 10086
(integer) 1

redis 127.0.0.1:6379> GETBIT bit 100   # bit 默认被初始化为 0
(integer) 0

时间复杂度


SETBIT 命令的时间复杂度:O(1)

返回 Redis字符串(string)

查看笔记

扫码一下
查看教程更方便