redis之数据类型之String(十三)

String(字符串)

作用范围:1 计数器

     2 统计多单位的数量

     3粉丝数

     4对象缓存存储

  set name liming

  get name 

  exists  name

  type name

  append name "jimao" //对name拼接字符串jimao,  如果当前name不存在,就相当于set name 

   get name        //返回name的值  ,值是“limingjimao”

  strleng name     //查看name的长度

  

 

 

加减法 

 set age 0   

  incr age   //年龄加1

  decr  age //年龄减1  

  incrby age 10 //年龄加10

  decrby age 10 //年龄减10

  

 

 

 范围取值

  set  name  "liming,go  to  school"

  getrange name 0  3    查询第0到第3个字符之间的值

  getrange name 0  -1  查询所有的值

 

 

 

替换 

  set name  liminghehe

  get name

  setrange name 1   pppp     对name中的第一个字符开始的字符串进行替换

  get  name     lppppinghehe

 

 

 

 

 

setex(set with expire)    设置过期时间,如果存在就....

setex  name 30 "liming"   //设置name为liming,30秒后过期

setnx(set with expire)    设置过期时间,如果不存在就....

setnx在分布式锁中会经常使用,

setnx name  "jimao"   //如果不存在name,设置值jimao,如果存在就会创建失败

 

 

 

 

批量获取值,mset是一个原子性的操作,要么一起成功,要么一起失败

mset  name liming name1  jimao name liuxingchen    //同时设置name、name1、name2的值

keys *

mget name name1 name2            //同时获取name、name1、name2的值

 

 

 

设置对象

set user:1 {name:liming age:3}         // 设置一个1号用户的对象,值是json,

mset user:1:name  liming  user:1:age 20       //设置一个1号用户,名字是liming,年龄是20

mget user:1:name  user:1:age         //  批量获取user的属性

 

 

组合命令

getset  name liming    先get再set,如果不存在值返回null,如果存在值,则获取原来的值并且设置新的值

get name 

 

 

posted @ 2020-09-15 09:58  我是一只老白兔  阅读(217)  评论(0编辑  收藏  举报