redis中设置获取值--字符串

    储存文字、数字或二进制数据

    1,为字符串键设置值  set  strkey "strvalue"  

    2,获取字符串的值  get  strkey  

    3,只在键不存在的情况下设置   setnx  strkey "strvlaue";     

          键不存在返回1,已存在设置失败,返回0

    4,同时设置多个键值  MSET key1 "v1" key2 "v2" key3 "v3"    

    5,同时获取多个键值  mget key1 key2 key3

    6,同时设置多个不存在的键值     MSETNX  key1 "v1" key2 "v2" key3 "v3"  

         只有在所有给定键都不存在的情况下, MSETNX 会为所有给定键设置值,效果和同时执行多个 SETNX 一样。如果给定的键至少有一个是存在的,那么 MSETNX 将          不执行任何设置操作。键不存在返回1,已存在设置失败,返回0

    7,设置新值并返回旧值  getset  key1 v1

         set key1 "v1"; 

         getset key1 "v2";  ---返回 v1,   

         get  key1;---返回v2

    8,追加内容到字符串末尾    append

         set key1 "v1";

         append key1 "--kkk";

         get  key1;---返回v1--kkk

    9,返回值的长度    strlen key1

    10,根据索引替换值,正数索引

          set key1 "one";

          setrange key1  1  "range";

          get  key1;---返回orange

    11,索引取值   包含start  end

         set key1 "hello world";

         getrange key1 0 4;  ---返回 "hello"

         getrange key1 -5 -1;  ---返回 "world"

   12,增加或减少数字的值

        INCRBY num 100 ;--键 num 不存在,命令先将 num 的值初始化为 0,然后再执行加 100 操作 ,返回 (integer) 100   

        INCRBY num 25 ;   将值再加上 25 返回 (integer) 125

        DECRBY num 10 ; 将值减少 10 返回 (integer) 115

        DECRBY num 50; 将值减少 50 返回 (integer) 6

    13,增一和减一

       SET num 10 ;

       INCR num ;返回(integer) 11 

       DECR num ;返回(integer) 10

    14,浮点数增减

       SET num 10 ; INCRBYFLOAT num 3.14 ;返回"13.14" 

       INCRBYFLOAT num -2.04 ;通过传递负值来达到做减法的效果 返回"11.1"

即使字符串键储存的是数字值,它也可以执行 APPEND、STRLEN、SETRANGE 和 GETRANGE 。 当用户针对一个数字值执行这些命令的时候,Redis 会先将数字值转换为字符串,然后再执行命令。

    15,二进制数据操作,SET 、GET 、SETNX、 APPEND 等命令同样可以用于设置二进制数据。

    16,设置二进制位的值 SETBIT key index value 将给定索引上的二进制位的值设置为 value ,命令返回被设置的位原来储存的旧值。

 

    17,获取二进制位的值 GETBIT key index 返回给定索引上的二进制位的值。

    18,计算值为 1 的二进制位的数量 BITCOUNT key [start] [end] 计算并返回字符串键储存的值中,被设置为 1 的二进制位的数量。 一般情况下,给定的整个字符串键都会进行计数操作,但通过指定额外的 start 或 end 参数,可以让计 数只在特定索引范围的位上进行。 start 和 end 参数的设置和 GETRANGE 命令类似,都可以使用负数值:比如 -1 表示最后一个位,而 -2 表示倒数第二个位,以此 类推。

     19,二进制位运算 BITOP operation destkey key [key ...] 

命令的返回值为计算所得结果的字节长度,相当于对 destkey 执行 STRLEN

operation 可以是 AND 、 OR 、 NOT 、 XOR 这四种操作中的任意一种:

BITOP AND destkey key [key ...]    ---对一个或多个 key 求逻辑并,并将结果保存到 destkey 。

BITOP OR destkey key [key ...]      ---对一个或多个 key 求逻辑或,并将结果保存到 destkey 。

BITOP XOR destkey key [key ...]    ---对一个或多个 key 求逻辑异或,并将结果保存到 destkey 。

BITOP NOT destkey key                 ---对给定 key 求逻辑非,并将结果保存到 destkey 。

     20,STRLEN、SETRANGE 和 GETRANGE 不适用于中文

STRLEN、SETRANGE 和 GETRANGE 都是为英文设置的,它们只会在字符为单个字节的情况下正常 工作,而一旦我们储存的是类似中文这样的多字节字符,那么这三个命令就不再适用了

      如果你想知道被 储存的中文包含多少个字节,那么可以使用 STRLEN

posted @ 2021-11-30 17:54  昊昋  阅读(802)  评论(0编辑  收藏  举报