APPEND
格式:APPEND key value
作用:在key的键值后追加value,如果key不存在,则创建key,并存入value。
返回值:追加value后的字符串长度。
示例:
192.168.1.100:6379> set testkey hello
OK
192.168.1.100:6379> append testkey " word"
(integer) 10
192.168.1.100:6379> get testkey
"hello word"
BITCOUNT
格式:BITCOUNT key [start] [end]
作用:计算key的值中比特位1的个数。可以用start和end指定统计的开始和结束位置。
返回值:比特位1的个数。如果key不存在,返回0。
示例:
192.168.1.100:6379> set testkey 5
OK
192.168.1.100:6379> bitcount testkey
(integer) 4
192.168.1.100:6379> bitcount testkey 0 1
(integer) 4
192.168.1.100:6379> bitcount testkey 0 2
(integer) 4
192.168.1.100:6379> bitcount testkey 1 2
(integer) 0
BITOP
格式:BITOP operation destkey key [key ...]
作用:对一个或多个字符串key进行位操作,操作结果保存在 destkey 中。operation 有四种类型
AND 进行按位与操作;
OR 进行按位或操作;
XOR 进行按位异或操作;
NOT 进行按位取反操作。
如果其中一个key的字符串长度较短,则缺少的部分按0处理。
返回值:destkey 字符串的长度。
示例:
192.168.1.100:6379> set testkey1 E
OK
192.168.1.100:6379> set testkey2 F
OK
192.168.1.100:6379> bitop and testkey3 testkey1 testkey2
(integer) 1
192.168.1.100:6379> get testkey3
"D"
192.168.1.100:6379> bitop or testkey3 testkey1 testkey2
(integer) 1
192.168.1.100:6379> get testkey3
"G"
192.168.1.100:6379> bitop xor testkey3 testkey1 testkey2
(integer) 1
192.168.1.100:6379> get testkey3
"x03"
192.168.1.100:6379> bitop not testkey3 testkey1
(integer) 1
192.168.1.100:6379> get testkey3
"xba"
DECR
格式:DECR key
作用:对给定的key进行减一操作。如果key不存在,则先创建key,初始化为0,再进行减一操作。
返回值:减一后的值。如果key的值不能表示为数字,则返回错误。
示例:
192.168.1.100:6379> set testkey 9
OK
192.168.1.100:6379> decr testkey
(integer) 8
DECRBY
格式:DECRBY key decrement
作用:对给定的key进行减decrement操作。如果key不存在,则先创建key,初始化为0,再进行减decrement操作。
返回值:减decrement后的值。如果key的值不能表示为数字,则返回错误。
示例:
192.168.1.100:6379> set testkey 9
OK
192.168.1.100:6379> decrby testkey 3
(integer) 6
GET
格式:GET key
作用:获取key的字符串值。如果key不存在,返回nil。
返回值:key的字符串值。如果key的值不是字符串类型,返回错误。
GETBIT
格式:GETBIT key offset
作用:获取key指定bit位的值。
返回值:key指定bit位的值。如果offset超出了key的值的范围,或key不存在,则返回0。
示例:2的ASCII码为00110010
192.168.1.100:6379> set testkey 2
OK
192.168.1.100:6379> getbit testkey 0
(integer) 0
192.168.1.100:6379> getbit testkey 1
(integer) 0
192.168.1.100:6379> getbit testkey 2
(integer) 1
GETRANGE
格式:GETRANGE key start end
作用:获取key的值的子字符串,由start、end设置截取范围。如果偏移量为负数,表示从最后开始计数,可以用-1表示最后一个字符。如果end超出了key的值的范围,则以最后一个字符作为结束。
返回值:子字符串。
示例:
192.168.1.100:6379> set testkey "hello"
OK
192.168.1.100:6379> getrange testkey 0 1
"he"
192.168.1.100:6379> getrange testkey 2 3
"ll"
GETSET
格式:GETSET key value
作用:设置key的值为value,并返回key的旧值。
返回值:key的旧值。如果key不存在,返回nil。
INCR
格式:INCR key
作用:对给定的key进行加一操作。如果key不存在,则先创建key,初始化为0,再进行加一操作。
返回值:加一后的值。如果key的值不能表示为数字,则返回错误。
示例:
192.168.1.100:6379> set testkey 5
OK
192.168.1.100:6379> incr testkey
(integer) 6
INCRBY
格式:INCRBY key increment
作用:对给定的key进行加increment操作。如果key不存在,则先创建key,初始化为0,再进行加increment操作。
返回值:加increment后的值。如果key的值不能表示为数字,则返回错误。
示例:
192.168.1.100:6379> set testkey 5
OK
192.168.1.100:6379> incrby testkey 5
(integer) 10
INCRBYFLOAT
格式:INCRBYFLOAT key increment
作用:对给定的key进行加increment操作。如果key不存在,则先创建key,初始化为0,再进行加increment操作。计算结果最多只能表示小数点的后十七位。increment可以采用指数符号e,如2e5。
返回值:加increment后的值。如果key的值或increment不能表示为浮点数,则返回错误。
示例:
192.168.1.100:6379> set testkey 5
OK
192.168.1.100:6379> incrbyfloat testkey 5.23
"10.23"
MGET
格式:MGET key [key ...]
作用:返回一个或多个key的值。如果有的key不存在,相应的返回值为nil。
返回值:包含多个key的值的列表。
示例:
192.168.1.100:6379> mget testkey testkey2 testkey3
1) "10.23"
2) "F"
3) "xba"
MSET
格式:MSET key value [key value ...]
作用:同时设置一个或多个key的值。
返回值:OK
示例:
192.168.1.100:6379> mset testkey 1 testkey2 2
OK
MSETNX
格式:MSETNX key value [key value ...]
作用:当所有key都不存在时同时设置一个或多个key的值。如果有某个key存在,则不会执行任何设置操作。原子性操作,要么都设置值,要么都不设置值。
返回值:如果所有key都设置成功,返回1。如果有key设置出错,返回0。
示例:
192.168.1.100:6379> msetnx testkey 1 testkey2 2
(integer) 1
192.168.1.100:6379> msetnx testkey 1 testkey2 2
(integer) 0
PSETEX
格式:PSETEX key milliseconds value
作用:设置key的值为value,过期时间为milliseconds毫秒。
返回值:成功时返回 OK
示例:psetex testkey 10000 ff
SET
格式:SET key value [EX seconds] [PX milliseconds] [NX|XX]
作用:设置key的值为value。
EX seconds 设置过期时间为seconds秒;
PX milliseconds 设置过期时间为milliseconds毫秒;
NX 只有key不存在时,才进行设置操作;
XX 只有key存在时,才进行设置操作。
返回值:成功返回OK
示例:
192.168.1.100:6379> set testkey ff EX 5 NX
OK
192.168.1.100:6379> get testkey
"ff"
192.168.1.100:6379> set testkey ff EX 5 XX
OK
192.168.1.100:6379> set testkey ff EX 5 NX
(nil)
192.168.1.100:6379> get testkey
(nil)
192.168.1.100:6379> set testkey ff EX 5 XX
(nil)
SETBIT
格式:SETBIT key offset value
作用:设置key的值的offset比特位为value。如果offset超出了key的值的范围,则中间位置补零。
返回值:offset比特位的旧值。
示例:
192.168.1.100:6379> set testkey 5
OK
192.168.1.100:6379> setbit testkey 7 0
(integer) 1
192.168.1.100:6379> get testkey
"4"
192.168.1.100:6379> setbit testkey 7 1
(integer) 0
192.168.1.100:6379> get testkey
"5"
SETEX
格式:SETEX key seconds value
作用:设置key的值为value,过期时间为 seconds 秒。
返回值:成功时返回 OK
示例:setex testkey 10 ff
SETNX
格式:SETNX key value
作用:如果key不存在,则创建key值为value。如果key存在,则不操作。
返回值:成功返回1,失败返回0。
示例:
192.168.1.100:6379> setnx testkey ff
(integer) 1
192.168.1.100:6379> setnx testkey ff
(integer) 0
192.168.1.100:6379> del testkey
(integer) 1
192.168.1.100:6379> setnx testkey ff
(integer) 1
SETRANGE
格式:SETRANGE key offset value
作用:从key的值的offset偏移开始使用value覆盖字符串。如果offset超出了key的值的范围,则中间位置补零。
返回值:修改后的字符串的长度。
示例:
192.168.1.100:6379> set testkey hellohello
OK
192.168.1.100:6379> setrange testkey 5 word
(integer) 10
192.168.1.100:6379> get testkey
"hellowordo"
STRLEN
格式:STRLEN key
作用:返回字符串的长度。
返回值:字符串的长度。如果key不存在返回0;如果key不是字符串类型,返回错误。
示例:
192.168.1.100:6379> get testkey
"hellowordo"
192.168.1.100:6379> strlen testkey
(integer) 10