string是redis最基本的类型,可以包括任何类型数据,如jpg图片或者序列化对象.
单个value最大上限是1G字节
如果只使用string类型,redis就可以被看做具有持久化特性的memcache
set key value [ex 过期时间秒数]|[px 过期时间毫秒数] [nx]|[xx] 设置一个key的值,默认value的类型为string
ex,px过期时间,如果同时设置以后面的为准,如set name zhangsan ex 10 px 3000,则以后面的时间为准即3秒
nx:表示key不存在时执行操作
xx:表示key存在时执行操作
get key 获取key的值
mset key1 value1 key2 value2 .... keyN valueN 一次设置多个key的值
mget key1 key2 .... keyN 一次获取多个key的值
incr key 对key的值做加加操作,并返回新值,如果key不存则创建key并设置值为1,存在就将原值加1,但原值必须为integer类型
decr key 对key的值做减减操作,并返回新值
incrby key integer 将key的值加上指定值integer
decrby key integer 将key的值减去指定值integer
incrbyfloatkey key floatnumber 将key的值增加浮点数floatnumber
append key value 给指定的key的字符串值追加value,相当于字符串拼接
substr key start end 返回截取过的key的字符串值,包含start和end位置
setrange key offset value 把字符串偏移offset字节位置,改为value,偏移量offset从0开始,value有几个字节就替换几个字节
如果偏移量offset超过字符串长度,则中间位置自动补\0x00
如
set name hello
setrange name 6 ?
那么name就变为"hello\x00?"
getrange key [start stop] 获取字符串start到stop位置的字符,索引从0开始,包括start和stop位置字符
注:
1.start>=strlength,则返回空字符串
2.stop>=strlength,截取到字符串结尾
3.如果start所在位置在stop右边则返回空字符串
getset key newvalue 获取并返回key的原值,同时设置新值为newvalue
getbit key offset 从位的角度获取key在offset位上的值(offset从0开始,从左往右)
如:set char A A====>65(assic)====>0100 0001
getbit char 1 返回1
getbit char 2 返回0
setbit key offset value 从位的角度设置key在offset位置的值
如:大小写字母的转换
A 65 0100 0001
a 97 0110 0001
大写转小写只需要将大写字母的assic值加上32即可,对应的是字节上的第2位
set char A
setbit char 2 1
bitop operation deskey key1[key2....keyN]
对key1,key2...keyN作operation操作,并将结果保存到deskey中
operation 可以是AND、OR 、NOT 、XOR