Redis 的 ZREM 命令用于移除 有序集 KEY 中的一个或多个成员,不存在的成员将被忽略。当 KEY 存在但不是有序集类型时,返回一个错误。
192.168.98.70:6379> ZREM KEY member [member ...]
参数 | 描述 |
---|---|
KEY | 有序集合的键。 |
member | 要移除的成员。 |
被成功移除的成员的数量,不包括被忽略的成员。
O(M*log(N)), N 为有序集的基数, M 为被成功移除的成员的数量。
>= 1.2.0
在 Redis 2.4 版本以前, ZREM 每次只能删除一个元素。
元素存在,移除成功
192.168.98.70:6379> ZADD haicoder 100 Redis 50 Mongo 200 Mysql 10 SqlServer (integer) 4 192.168.98.70:6379> ZREM haicoder Redis (integer) 1 192.168.98.70:6379> ZRANGE haicoder 0 -1 1) "SqlServer" 2) "Mongo" 3) "Mysql" 192.168.98.70:6379> DEL haicoder (integer) 1
我们首先,使用 ZADD 命令,向键为 haicoder 的集合中批量插入元素。接着,使用 ZREM 命令,删除集合 haicoder 中的元素 Redis。
最后,我们使用 ZRANGE 命令,获取集合中的所有数据,元素 Redis 已被删除。
元素不存在,不做任何处理
192.168.98.70:6379> ZADD haicoder 100 Redis 50 Mongo 200 Mysql 10 SqlServer (integer) 4 192.168.98.70:6379> ZREM haicoder Redis1 (integer) 0 192.168.98.70:6379> ZRANGE haicoder 0 -1 1) "SqlServer" 2) "Mongo" 3) "Redis" 4) "Mysql" 192.168.98.70:6379> DEL haicoder (integer) 1
我们首先,使用 ZADD 命令,向键为 haicoder 的集合中批量插入元素。最后,我们使用 ZREM 命令,删除集合 haicoder 中的元素 Redis1,元素 Redis1 不存在,不做任何处理。
可以使用 ZREM 命令,同时删除多个元素
192.168.98.70:6379> ZADD haicoder 100 Redis 50 Mongo 200 Mysql 10 SqlServer (integer) 4 192.168.98.70:6379> ZREM haicoder Redis Mongo (integer) 2 192.168.98.70:6379> ZRANGE haicoder 0 -1 1) "SqlServer" 2) "Mysql" 192.168.98.70:6379> DEL haicoder (integer) 1
我们首先,使用 ZADD 命令,向键为 haicoder 的集合中批量插入元素。接着,使用 ZREM 命令,删除集合 haicoder 中的元素 Redis 和 Mongo。
最后,我们使用 ZRANGE 命令,获取集合中的所有数据,此时元素 Redis 和元素 Mongo 都已被删除。
Redis 的 ZREM 命令教程用于移除有序集 KEY 中的一个或多个成员,不存在的成员将被忽略。Redis ZREM 命令语法:
192.168.98.70:6379> ZREM KEY member [member ...]