文章目录
目录
前言
redis我们日常工作经常使用,可能很多人,都是拿来做缓存,其实它还有很多丰富的功能。本文主要是介绍一下redis中string字符串的使用方法,希望对大家有用。
set
set key value [EX seconds|PX milliseconds|EXAT timestamp|PXAT milliseconds-timestamp|KEEPTTL] [NX|XX] [GET]- 常规用法,就是set k v
- set k v ex 20 就是设置超时时间20秒,可用ttl k 查看剩余存活时间,单位秒
- set k v px 20 就是设置超时时间为20毫秒,可用ttl 查看剩余秒数,也可用pttl查看剩余毫秒数
- set k v exat 1629095957 就是设置时间到某个时间戳,例如2021-08-16 14:39:17
- set k v pxat 1629096183000 就是设置过期时间到某个毫秒的时间戳,例如:2021-08-16 14:43:03
- set k v keepttl 是指保存k键原来的存活时间;对已存在的k执行set命令,如果不指定存活时间,会被设置为-1,也就是永久存在;可以通过设置keepttl,来保留原来的存活时间;如图:

- set k v nx 当键k不存在时,设置键;设置成功返回ok,不成功时返回nil;于setnx等价
- set k v xx 当键k存在时,设置键;于nx正好相反
- set k v get 返回k之前的值,之前不存在时,返回nil,但是不会设置失败,如图:

get
get key- get k 获取键k对应的值,不存在时,返回nil
getex
getex key [EX seconds|PX milliseconds|EXAT timestamp|PXAT milliseconds-timestamp|PERSIST]- 用于获取k的值,并设置或者移除过期时间,参数类似于set
- ex,px,exat,pxat都类似于set的参数定义
- persist移除k的过期时间

getrange
getrange key start end- 截取字符串,其中start,end都是包括的,因此注意0 1 是获取前2个字符;如图:

setrange
setrange key offset value- setrange k 2 abc 从偏移量2开始(包括2),覆盖k的值;如图:

getset
getset key value- getset k v 给k设置值,并返回k原来的值;k不存在时,返回nil;类似于set k v get,同样不会由于返回nil导致set失败
mset
mset key value [key value ...]- mset k v k1 v1 k2 v2 批量设置键值,但是就没法像set那样设置过期时间之类的功能了
mget
mget key [key ...]- mget k k1 批量获取k的值,不存在的键会返回nil,如图:

setex
setex key seconds value- setex k 20 1 设置一个键为k,value为1,存活期为20秒的键值对;类似于set k 1 ex 20
- 如果设置毫秒级别的过期时间,可用psetex,类似 set k v px 20000
psetex
psetex key milliseconds value- 类似setex,只是设置的时间单位是毫秒
setnx
setnx key value- setnx k 2 当k不存在时设置值为2,设置成功返回1,k存在时返回0;类似set k 2 nx
msetnx
msetnx key value [key value ...]- msetex k 1 j 2 v 3 批量设置键值对,当所有key都不存在时返回1,否则返回0
strlen
strlen key- strlen k 返回键k存储的值的长度,不存在的k返回0
incr
incr key- incr k 对k的值加1,并返回加1后的结果;如果k的值是字符串,无法加1,则提示错误,如图:

incrby
incrby key increment- incrby k 2 ,于incr类似,只不过一次加2,并返回加2后的结果
incrbyfloat
incrbyfloat key increment- incrbyfloat k 0.1 对k的值加0.1 如图:

decr
decr key- decr k 对k的值减1
decrby
decrby key decrement- decrby k 2 对k的值减2,类似incrby
append
append key value- append k 23 将23追加到k对应的值后,不存在的k会报错,如图:

getdel
getdel key- getdel k 返回k原来的值,并将k删掉,如图:

其它
其余还有一些位的操作,bitmap时再介绍
总结
以上就是今天要讲的内容,有兴趣可以转载,但是请注明来源:https://blog.csdn.net/sinat_25446309/article/details/119736536
版权声明:本文为sinat_25446309原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。