https://blog.youkuaiyun.com/xxujia/article/details/81676817
有序set集合:有序,不重复
每个元素需要手动赋予一个分数,根据这个分数进行排序
有序set集合专门用来做排行榜
一、sortedset常用命令
1、赋值
(1)zadd key score1 member1 score2 member2 …
将所有成员以及该成员的分数存放到sorted-set中。
如果该元素已经存在则会用新的分数替换原有的分数。
返回值是新加入到集合中的元素个数,不包含之前已经存在的元素
2、获取元素
(1)zscore key member
返回指定成员的分数
(2)zcard key
获取集合中的成员数量
3、删除元素
(1)zrem key member1 member2 …
移除集合中指定的成员,可以指定多个成员
4、范围查询
(1)zrange key start end [withscores]
获取集合中脚标为start到end的成员,[withscores]参数表明返回的成员包含其分数
(2)zrevrange key start stop [withscores]
照元素分数从大到小的顺序返回索引从start到stop之间的所有元素
(3)zremrangebyrank key start stop
按照排名范围删除元素
(4)zremrangebyscore key min max
按照分数范围删除元素
二、sortedset扩展命令
1、zrangebyscore key min max [withscores] [limit offset count]
返回分数[min max ]的成员并按照分数从低到高排序
[withscores]:显示分数
[limit offset count]:offset表明从脚标为offset的元素开始并返回count个成员
2、zincrby key increment member
设置指定成员的增加的分数。返回值是更改后的分数
3、zcount key min max
获取分数在[min max]之间的成员个数
4、zrank key member
返回成员在集合中的排名。索引(从大到小)