在set基础上,增加了有个值
127.0.0.1:6379> zadd myset 1 one //添加有个值
(integer) 1
127.0.0.1:6379> zadd myset 2 two 3 three //添加多个值
(integer) 2
127.0.0.1:6379> zrange myset 0 -1 //遍历myset
1) "one"
2) "two"
3) "three"
//zrangebyscores key min max withscore 从最小值到最大值排序
127.0.0.1:6379> zrangebyscore myset -inf inf
1) "one"
2) "two"
3) "three"
127.0.0.1:6379> zrangebyscore myset -inf inf withscores //显示所有value且显示key
1) "one"
2) "1"
3) "two"
4) "2"
5) "three"
6) "3"
127.0.0.1:6379> zrangebyscore myset -inf 2 withscores //显示指定范围的value
1) "one"
2) "1"
3) "two"
4) "2"
127.0.0.1:6379> zrevrange myset 0 -1 //从大到小排序
1) "three"
2) "one"
//rem 删除指定元素
127.0.0.1:6379> zrange myset 0 -1
1) "one"
2) "two"
3) "three"
127.0.0.1:6379> zrem myset two //移除有序集合的指定元素
(integer) 1
127.0.0.1:6379> zrange myset 0 -1
1) "one"
2) "three"
127.0.0.1:6379> zcard myset //获取有序集合中的个数
(integer) 2
/* 获取指定范围的元素数量*/
127.0.0.1:6379> zcount myset -inf inf
(integer) 2
127.0.0.1:6379> zcount myset -inf 1
(integer) 1
127.0.0.1:6379> zcount myset -inf 2
(integer) 1
案例思路:set 排序 存储班级成绩表,工资表排序!
普通消息,1、主要消息2、带权重进行判断
排行榜引用实现,取top N测试