String字符串命令整合。
命令
|
版本
|
复杂度
|
格式
|
返回值
|
作用
|
备注
|
set
|
1.0.0
|
O(1)
|
set key value
[EX seconds] [PX milliseconds] [NX|XX]
|
成功OK,失败nil
|
设置key的value与过期时间,如果数据已经存在,就覆盖原有数据。
|
ex-秒,px-毫秒,nx-只在key不存在的时候,进行操作,xx只在key在的时候,才进行操作
|
setnx
|
1.0.0
|
O(1)
|
setnx key value
|
成功1,失败0
|
只在键 key 不存在的情况下, 将键 key 的值设置为 value 。
|
setnx是set if not exists(如果不存在,就set)的简称
|
setex
|
2.0.0
|
O(1)
|
setex key seconds value
|
成功ok
|
设置key的value,并且修改key的生存时间为seconds秒,如果key已经存在,覆盖原数据。
|
效果等同于set key value,expire key seconds
|
psetex
|
2.6.0
|
O(1)
|
psetex key milliseconds value
|
成功ok
|
同上,只是生存时间单位为毫秒
|
|
get
|
1.0.0
|
O(1)
|
get key
|
成功返回key的值,失败返回nil
|
获取与键key相关联的字符串值
|
key类型不是string,将返回错误
|
getset
|
1.0.0
|
O(1)
|
getset key value
|
返回key的旧值,key原不存在返回nil
|
修改key的value,并且返回key在设置之前的旧值
|
key类型不正确返回error
|
strlen
|
2.2.0
|
O(1)
|
strlen key
|
返回key存储的字符串的长度,不存在返回0
|
获取key存储的字符串长度
|
key类型不正确返回error
|
append
|
2.0.0
|
O(1)
|
append key value
|
返回追加value之后的值长度
|
在key原值后面添加value。如果key不存在,就将key的值设为value
|
|
setrange
|
2.2.0
|
O(1)短
O(M)长
|
setrange key offset value
|
返回修改之后value的长度
|
从偏移量offset开始,用value参数覆盖key存储的字符串值。不存在的key当空字符串
|
偏移量大于原长度,将使用零子节填充,redis-string类型大小限制为512M,最大偏移量为2^29-1(536870911) ,M为字符串长度
|
getrange
|
2.4.0
|
O(N)
N返回长度
|
getrange key start end
|
返回字符串指定部分内容
|
返回字符串中下标start-end的部分内容,包括start与end。
|
可以使用负数,表示从末尾开始计数。范围超过字符串长度,忽视超过的区域。
|
incr
|
1.0.0
|
O(1)
|
incr key
|
返回key+1之后的值
|
给key存储的数字+1,key不存在的话,默认原始值为0,key存储的不是数字的话,将返回error
|
数字的值限制在64位有符号数字表示中
|
incrby
|
1.0.0
|
O(1)
|
incrby key increment
|
返回key+increment之后的值
|
给key存储的数字+increment,key不存在的话,默认原始值为0,key存储的不是数字的话,将返回error
|
同上
|
incrbyfloat
|
2.6.0
|
O(1)
|
incrbyfloat key increment
|
同上
|
给key存储的值添加浮点值increment,key不存在的话,默认原始值为0,当key的类型不是string或者value无法解释为float,error
|
计算结果最多保留小数后17位
|
decr
|
1.0.0
|
O(1)
|
decr key
|
返回key-1之后的值
|
给key存储的数字-1,key不存在的话,默认原始值为0,key存储的不是数字的话,将返回error
|
数字的值限制在64位有符号数字表示中
|
decrby
|
1.0.0
|
O(1)
|
decrby key increment
|
返回key-increment之后的值
|
给key存储的数字-increment,key不存在的话,默认原始值为0,key存储的不是数字的话,将返回error
|
同上
|
mset
|
1.0.1
|
O(N)
N为修改量
|
mset key value [key value...]
|
返回OK
|
同时设置多个key的value
|
|
msetnx
|
1.0.1
|
同上
|
msetnx key value [key value...]
|
成功1,失败0
|
当所有的key不存在时,设置这些key的value
|
|
mget
|
1.0.0
|
同上
|
mget key [key ...]
|
返回值的列表
|
获取多个string key的值,其中某一个不存在的话,返回的对应的value为nil
|