Redis 删除List中指定index的值

redis命令中本身不存在删除指定index的命令,但是可以结合2个命令来实现...

redis命令中本身不存在删除指定index的命令,但是可以结合2个命令来实现:

lset mylist index "del"
lrem mylist 0 "del"
  1. 将要删除的index的值设置为del,此处是一个示例,实际上应该将其设置成一个唯一值,使用加密算法加密index的值最好,例如md5(index)
  2. 使用lrem命令删除,该命令可以删除list中值为del的元素

lrem解释

LREM key count value

根据参数 count 的值,移除列表中与参数 value 相等的元素。

count 的值可以是以下几种:

  • count > 0 : 从表头开始向表尾搜索,移除与 value 相等的元素,数量为 count 。
  • count < 0 : 从表尾开始向表头搜索,移除与 value 相等的元素,数量为 count 的绝对值。
  • count = 0 : 移除表中所有与 value 相等的值。