redis笔记——string结构命令详解

时间:2021-09-28 10:45:17

flushdb 清空db

1.set key value [ex 秒数] | [px 毫秒数 ]  [nx]/[xx]

eg:set a 1 ex 10 ,10秒有效

  set b 2 px 9000 ,9s有效

如果 ex和px 同时写,以后面的有效期为准  set c 3 ex 100 px 9000 实际有效期是9000毫秒

nx:表示key不存在时,执行操作

xx:表示key存在时,执行操作

 

2.mset  (multi set) 一次性设置多个键值

eg:mset key1 value1 key2 value2 ......

3.mget  获取多个key的值

4.get 获得单个key的值

5.setrange key offset value :把字符串的offset偏移字节(从0开始计算),改成value

eg: set wold hello

  setrange wold 2 * -> he*lo 

  注释:如果偏移量>字符长度,该字符自动补0X00

  redis笔记——string结构命令详解

 

 6.append key value : 把value追加到key的原值上

redis笔记——string结构命令详解

 

7.getrange key start stop :获取字符串种[start,stop]范围的值,对于字符串的下标,左数从0开始,右数从-1开始

eg:set title chinese

getrange title 0 3 ->chin

getrange title 1 -2 ->hines

注释:start >=length(总长度) 返回空字符串

   stop >=length,则截取至字符串结尾

     如果start 所处位置在stop右边,返回空字符串

 

8.getset key newvalue :获取并返回旧值,设置新值

redis笔记——string结构命令详解

 

9.incr  :加1  

 incrby key num :一次加num

 incrbyfloat key floatnum:当做浮点数

10.decr :减1 

 decrby key num :一次减num

11.setbit key offset value :设置offset对应二进制上的值

  A:0100 0001

  a:0110 0001

  转化为二进制 A和a 之间差32 

  所以,set key 2 1 或 set key 2 0 就可以把大写转化为小写或者把小写转化为大写

redis笔记——string结构命令详解

注释:如果offset过大,则会在中间填充0

    offset 最大为多少 2^32-1 最大为512M ,因此字符串最大可设置为512M