reids数据类型的操作

        最近刚接触redis,在写一个简单的计费系统时,为了减少DB的压力,先将数据存到redis,然后定时将缓存的数据DB,其间遇到很多问题,下面总结一下:

        1、本来打算在将long型数据保存到redis,然后再做incrBy操作,但是不行。来看一下redis保存的long类型是会样?

       如果对long 或 integer做incrBy操作,直接失败。

      所以最后选择使用String来保存。

 

      2.后来我看到redids有counter操作,counter的做incrBy的原理是把value取出来,转化为int,做了incr操作后,再转化为String保存,但是有一个问题如果value的值变为负数了,则操作是不成功的。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis支持多种数据类型操作,包括链表、集合和位图等。 对于链表类型数据,可以使用lrem命令从链表中删除指定的值。lrem命令的作用是从key链表中删除value值,可以通过设置count参数来指定删除的个数和方向。当count大于0时,从表头开始删除;当count小于0时,从表尾开始删除。例如,使用lrem命令从名为anwser的链表中删除2个值为a的元素,可以执行以下命令: ``` lrem anwser 2 a ``` 执行完毕后,anwser链表中的值为\["a", "d", "c", "b", "a"\]。\[1\] 对于集合类型数据,可以使用srem命令从集合中移除指定的元素。例如,使用srem命令从名为setkey的集合中移除setvalue3,可以执行以下命令: ``` srem setkey setvalue3 ``` 执行完毕后,setkey集合中的值为\["setvalue1", "setvalue2"\]。\[2\] 对于位图类型数据,可以使用setbit命令设置指定偏移量上的二进制位的值。例如,使用setbit命令将名为char的键的第2位设置为1,可以执行以下命令: ``` setbit char 2 1 ``` 执行完毕后,char键对应的值为"a"。如果再将第2位设置为0,可以执行以下命令: ``` setbit char 2 0 ``` 执行完毕后,char键对应的值为"A"。\[3\] 综上所述,Redis提供了丰富的数据类型操作命令,可以根据具体需求选择适合的命令进行操作。 #### 引用[.reference_title] - *1* *3* [redis各种数据类型操作](https://blog.csdn.net/ldTrueLove/article/details/111594178)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [redis当中各种数据类型操作](https://blog.csdn.net/weixin_42518541/article/details/105722913)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值