redis string类型数据常用操作
常用操作
命令 | 说明 |
---|---|
set | 设置值 |
get | 获取值 |
mset | 设置多个值 |
mget | 获取多个值 |
append | 添加字段 |
del | 删除 |
strlen | 返回字符串长度 |
expire key 过期时间 | 设置 key 的过期时间 |
setex key 过期时间 value | 指定的 key 设置值及其过期时间 |
incr | 自增 |
incrby | 自增多少个 |
decr | 自减 |
decrby | 自减多少个 |
getrange | 获取子串 |
setrange | 替换 |
1、赋值 / 获取 : set key value / get key
- set key value : 如果不存在key ,数据库是就添加key value ,如果存在key ,value 将覆盖 原value的值
- get key 如果存在,则返回value的值 ,如果key 不存在,返回 nil 空
2、设置多个值/获取多个值: mset key1 values1 key2 values2 … / mget key1 key2 …
- mset key1 values1 key2 value2 … :同时对多组key value赋值 :每一个key 对应一个value,用空格隔开,每组key value 之间用空格隔开
- mget key1 key2 … : 同时获取多少value值 ,每个value与命令行的key位置相对应,每个key之间用空格隔开
3.向key的value中添加值: append key value1
-
将value1的值添加到key的value的后面 ,命令返回当前key 的字符串长度
-
如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。
-
如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。
-
value 为数值 ,不会报错,直接当字符串添加到最后
4、删除键值 :del key
- 删除一个key value,即删除一条记录
5、返回字符串长度 : strlen
- 返回 key 所储存的字符串值的长度,当 key 不存在时,返回 0 。
- 当 key 储存的不是字符串值时,返回一个错误。
6、设置 key 的过期时间:expire key 过期时间
- 过期时间单位是秒, 0 表示不会过期,
- key如果不存在,不会报错,
7、设置 key 的值及过期时间:
- 如果 key 已经存在, SETEX 命令将会替换旧的值,如果key 不存在,添加key value 并设置过期时间
8、value值+1 / value值+n : incr key / incrby n key
- 函数返回值:执行 incr 命令之后 key 的值。
- 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。
- 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
9、 value值-1 / value值-n : decr key / decrby n key
- 函数返回值:执行 decr 命令之后 key 的值。
- 如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECR 操作
- 如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。
10、获取指定范围值:getrange key start end
-
返回 key 中字符串值的子字符串,字符串的截取范围由 start 和 end 两个偏移量决定(包括 start 和 end 在内)。
-
负数偏移量表示从字符串最后开始计数, -1 表示最后一个字符, -2 表示倒数第二个,以此类推。
-
超过实际字符串值域范围,自动被符略
11、替换指定范围值 : setrange key offset value
- 用 value 参数覆写(overwrite)给定 key 所储存的字符串值,从偏移量 offset 开始。
- 不存在的 key 当作空白字符串处理。
- 如果给定 key 原来储存的字符串长度比偏移量小(比如字符串只有 5 个字符长,但你设置的 offset 是 10 ),那么原字符和偏移量之间的空白将用零字节(zerobytes, “\x00” )来填充。