首页 > 其他 > 详细

redis如何删除list中特定索引的值

时间:2020-05-27 09:49:18      阅读:141      评论:0      收藏:0      [点我收藏+]

Redis可以通过LINDEX key index获取list中的特定值, 但无法直接删除特定索引下的值.

LSETLREM结合删除list中特定索引的值

两步:

  1. 先用LSET在指定索引位置上设置特殊值: LSET key index value在指定索引位置的值替换为value
  2. 再用LREM删除该特殊值: LREM key n value, 从左边删除n个value

例如删除list1索引3对应的在值

LSET list1 3 del
LREM list1 1 del

补充

在Redis中, list是双向链表有两种索引:

  • 正向索引: 0, 1, 2, 3, ...
  • 逆向索引: -1, -2, -3, ...

与删除的相关的操作有:

  • LPOP / RPOP key: 从左边/右边弹出一个值
  • LREM key n value: 从左边删除n个value
  • LTRIM key begin-index, end-index: 仅保留指定区间的元素

    Redis的区间都是闭区间, [begin-index, end-index]

redis如何删除list中特定索引的值

原文:https://www.cnblogs.com/bitbitbyte/p/12970254.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!