redis的zset命令总结
文章目录
zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。
redis 有序集合zset和集合set一样也是string类型元素的集合,且不允许重复的成员。
不同的是 zset 的每个元素都会关联一个分数(分数可以重复),redis 通过分数来为集合中的成员进行从小到大的排序。分数可以重复
1.zadd
将一个或多个 member 元素及其 score 值加入到有序集合 key 中,如果 member存在集合中,则更新值;score 可以是整数或浮点数.
#zadd key score member [score member…]
127.0.0.1:6379> zadd zs1 10 zhangsan 20 lisi 99 xiaoming
(integer) 3
2.zrem
删除有序集合 key 中的一个或多个成员,不存在的成员被忽略,返回值:被成功删除的成员数量,不包括被忽略的成员。
#zrem key member [member…]
127.0.0.1:6379> zrem zs1 lisi ll
(integer) 1
127.0.0.1:6379> zrange zs1 0 -1
1) "zhangsan"
2) "xiaoming"
3.zcard
获取有序集 key 的元素成员的个数
返回值:key 存在返回集合元素的个数, key 不存在,返回 0
#zcard key
127.0.0.1:6379> zcard zs1
(integer) 3
4. zrange
查询有序集合,指定区间的内的元素。集合成员按 score 值从小到大来排序。 start,stop 都是从 0 开始。0 是第一个元素,1 是第二个元素,依次类推。以 -1 表示最后一个成员,-2 表示倒数第二个成员。WITHSCORES 选项让 score 和 value 一同返回。返回值:自定区间的成员集合.
127.0.0.1:6379> zadd zs1 10 zhangsan 20 lisi 99 xiaoming
(integer) 3
#zrange key start end
127.0.0.1:6379> zrange zs1 0 -1
1) "zhangsan"
2) "lisi"
3) "xiaoming"
5. zrevrange
返回有序集 k