Redis 的 ZREMRANGEBYSCORE 命令用于移除 有序集 KEY 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。
自版本 2.1.6 开始, score 值等于 min 或 max 的成员也可以不包括在内,详情请参见 ZRANGBYSCORE 命令。
192.168.98.70:6379> ZREMRANGEBYSCORE KEY min max
参数 | 描述 |
---|---|
KEY | 有序集合的键。 |
min | 要获取的成员的 score 的最小值。 |
max | 要获取的成员的 score 的最大值。 |
被移除成员的数量。
O(log(N)+M), N 为有序集的基数,而 M 为被移除成员的数量。
>= 1.2.0
分数区间存在,移除成功
192.168.98.70:6379> ZADD haicoder 100 Redis 50 Mongo 200 Mysql 10 SqlServer (integer) 4 192.168.98.70:6379> ZRANGE haicoder 0 -1 1) "SqlServer" 2) "Mongo" 3) "Redis" 4) "Mysql" 192.168.98.70:6379> ZREMRANGEBYSCORE haicoder 50 100 (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 的集合中批量插入元素。接着,我们使用 ZREMRANGEBYSCORE 命令,删除集合 haicoder 中的分数在 50 到 100 之间的元素。
最后,我们使用 ZRANGE 命令,获取集合中的所有数据,元素 Mongo 和元素 Redis 已被删除。
Redis 的 ZREMRANGEBYSCORE 命令用于移除有序集 KEY 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。Redis ZREMRANGEBYSCORE 命令语法:
192.168.98.70:6379> ZREMRANGEBYSCORE KEY min max