有序集合的特点
- 集合中的元素有序,不可以重复
- 与列表通过索引实现有序不同,有序集合实现有序的方式是通过给每一个集合元素设置一个分数score字段作为排序依据
- 集合中的元素不能重复,但是score可以重复
- 无法通过某一个下标的方式获取元素
- 单个集合最多可以存储2的32次方-1个(4294967295个)元素
- redis支持对集合取交集(共同兴趣点)、并集(两个开发团队擅长什么)、差集
单个集合内的操作命令
-
集合内添加元素,返回添加成功的元素个数
-
添加集合元素,成员必须不存在才能添加成功,失败返回0
-
添加集合元素,成员必须存在才能添加成功,用于更新、失败返回0
-
返回有序集合中集合元素和分数发生变化的个数
-
对score做增加
-
计算有序集合成员元素的个数
-
查看集合某个成员的分数
-
查看集合某成员的排名、分数从低到高排名
-
查看集合某成员的排名、分数从高到低排名
-
删除集合中某成员、返回删除成员的个数、允许一个删除多个成员
-
增加集合中某成员的分数、分数可正可负,并返回最终计算的结果
-
返回指定排名范围内集合成员
-
返回指定排名范围内集合成员和分数信息
-
返回指定分数范围内成员的信息
-
返回指定分数范围内成员的信息和分数信息
-
返回指定分数范围内成员信息,范围可以使用无限小和无限大。也支持范围的开区间(),闭区间【】。
-
返回指定分数范围内的集合中成员的个数
-
按照升序删除指定排名内的元素
-
删除指定分数范围的集合成员
有序集合间的操作命令
- 计算两个集合分数的平均分
使用场景
- 排行榜