文章目录
目录
前言
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