String类型是Redis中最简单的字符串类型键值对缓存,也是最基本的数据类型之一。
# 查看当前库中所有的键(不建议在生产中使用,数据量大会造成短暂的卡顿)
keys *
# keys a* 查询所有以a开头的键
# keys *x 查询所有以x结尾的键
get/set/del:查询/设置/删除
set rekey data:设置已经存在的key会直接覆盖掉原始的数据,
setnx key data:使用之前先对key是否存在进行校验,如果存在,则操作无效,反之,进行set操作
# 例如继续对sex进行设置,会直接覆盖掉原始的数据
set sex female
# 比较友好的操作就是可以使用setnx 使用前先判断下是否存在该key,如果存在则key设置无效,否则设置成功
# 由于之前设置的sex已经存在值,因此影响的行数为0,查看sex中的数值依旧为female
setnx sex male
set key value ex
# 设置key为name 值为tom 过期时间为10秒的数据
set name tom ex 10
# ttl key 查询该key剩余过期时间 -2代表已过期
ttl name
append key:合并字符串
strlen key:查询字符串长度
# 为tom追加字符串
append name 123
# 查看字符串长度
strlen name
incr key:累加1 ; decr key:累减1
# 为 age累加1
incr age
# 为 age累减1
decr age
incrby key num:累加指定数值;decrby key num:累减指定数值
# 为 age累增10
incrby age 10
# 为 age累减
decrby age 10
getrange key start end :截取str中的数据,类似于substring,end =-1代表最后
# 截取key为name,下标值从0~3
getrange name 0 3
setrange key start newdata:从start位置开始替换数据
# setrange name 3 456的意思就是从第3位开始进行替换,将原始的tom123 会替换成tom456
setrange name 3 456
mset连续设置多个值
mget连续取值
msetnx:连续设置多个值,如果存在则不设置
# 由于phone这个key已经存在,因此会直接导致该操作语句无效
msetnx phone 789456123 address hah
注意:无论已存在的值在msetnx前后,只要存在已存在的值,均会导致该操作语句无效。
原文:https://www.cnblogs.com/shine-rainbow/p/12862357.html