Redis之2———string类型详解:常用操作、业务场景

目录

string 的常用操作

1 set key value

2 get

3 getset key value

4 mset key1 value1 [key2 value2……]

5 get key1[key2 ……]

6 incr key 

7 decr key

8 incrby key increment

9 incrbyfloat key increment

10 decrby key increment

11 append key value

12 setex key senconds value

13 setnx key value

14 strlen key

15 getrange key start end

string类型的一个业务场景


首先Redis是一个key-value型的数据库,因此这个string指的是value的类型,注意,在redis里面key的值都是string型的。

string 的常用操作

1 set key value

set key 的值,例如  set age 17 ,即将age的值设置为17。

在将set age 17之后,我们再执行set age 18 这时候age的值就变为了18,因为再redis里面key相当于一个主键,具有唯一性。

2 get

get可以通过key值获取到相应的value,如上图,可以通过get age 获取到age对应的值为18.

3 getset key value

将key设置为value,并返回key的旧值,如下所示:

4 mset key1 value1 [key2 value2……]

mset即mutiple set,同时设置一个或者多个key-value对,如下所示:

设置了两个key-value对:name zhangsan和sex male

5 get key1[key2 ……]

获取多个key对应的value,如上图所示。

6 incr key 

如果key对应的value里存放着的是数字,那么可以将value的值加1.

如上图,将age的值加了1.

7 decr key

将key中对应的value值减1

8 incrby key increment

将key所对应的值加上给点给的增量值(increment)

9 incrbyfloat key increment

将key对应的值加上给定的浮点增量(increment)。

10 decrby key increment

将key对应的值减去对应的increment

11 append key value

如果key已经存在并且是一个字符串,append将value追加到原来value值的末尾,如下:

12 setex key senconds value

将value的值关联到key,并将key的国企时间设置为senconds秒

我们再get name之前等待10秒,可以发现name zhangsna的键值对已经不存在了,如果再十秒之内进行获取,还是能获取到的,十秒之后将会被清除。

13 setnx key value

只有key不存在时设置key 的值。

14 strlen key

返回key所存储的字符串的长度

15 getrange key start end

返回key中字符串的子字符

string类型的一个业务场景

相信大家对微信投票都不陌生吧,一般情况下我们都是一天只能投一次,不能一直点,那么怎么处理这个业务呢?

解决方案是:将投票人的相关信息(微信号等)记录到redis中,并且为数据通过setex设置时效信息(24小时),再投票之前先去查找微信号是否出现在数据库当中,如果出现,就不能进行投票。同时,由于信息设置了时效,因此在24小时过去之后,投票人的相关信息从redis中抹去,就可以继续进行投票等操作了,这样可以保证一天一个人只能投票一次。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值