String数据类型
bit操作
-
BITFIELDkey [GET type offset] [SET type offset value] [INCRBY type offset increment] [OVERFLOW WRAP|SAT|FAIL]:
-
BITCOUNT key [start end]:统计字符串被设置为1的bit数.
-
BITPOS key bit [start] [end]:返回字符串里面第一个被设置为1或者0的bit位。
-
BITOP operation destkey key [key ...]:BITOP operation destkey key [key ...]
字串操作
-
APPEND key value:如果
key
已经存在,并且值为字符串,那么这个命令会把value
追加到原来值(value)的结尾。 如果key
不存在,那么它将首先创建一个空字符串的key
,再执行追加操作,这种情况 APPEND 将类似于 SET 操作。
例:
10.32.0.18:6380> exists test1
(integer) 0
10.32.0.18:6380> append test1 abc
(integer) 3
10.32.0.18:6380> get test1
"abc"
10.32.0.18:6380> exists test1
(integer) 1
10.32.0.18:6380> append test1 abcde
(integer) 8
10.32.0.18:6380> get test1
"abcabcde"
数值操作
-
BITOP operation destkey key [key ...]:对key对应的数字做减1操作。如果key不存在,那么在操作之前,这个key对应的值会被置为0。如果key有一个错误类型的value或者是一个不能表示成数字的字符串,就返回错误。这个操作最大支持在64位有符号的整型数字。
例:
10.32.0.18:6380> exists decr-test1
(integer) 0
10.32.0.18:6380> decr decr-test1 //不存在的key值,会先被赋值0,然后-1
(integer) -1
10.32.0.18:6380> get decr-test1
"-1"
10.32.0.18:6380> set decr-test2 10
OK
10.32.0.18:6380> decr decr-test2
(integer) 9
10.32.0.18:6380> get decr-test2
"9"
10.32.0.18:6380> set decr-str abc //对字符串操作,会返回错误
OK
10.32.0.18:6380> decr decr-str
(error) ERR value is not an integer or out of range
-
将key对应的数字减decrement。如果key不存在,操作之前,key就会被置为0。如果key的value类型错误或者是个不能表示成数字的字符串,就返回错误。这个操作最多支持64位有符号的正型数字。
例:
10.32.0.18:6380> decrby test3 2
(integer) -2
10.32.0.18:6380> get test3
"-2"
10.32.0.18:6380> decrby test3 -10
(integer) 8
10.32.0.18:6380> get test3
"8"
10.32.0.18:6380> set test4 abc
OK
10.32.0.18:6380> decrby test4 10
(error) ERR value is not an integer or out of range