redis有序集合和集合一样,元素都是字符串类型,而且不能重复
和普通集合不同的是它关联一个double类型的分数,redis是同个元素的分数来对元素进行排序
有序集合的元素是唯一的,但是分数可以重复
下面是一些操作的命令
1. zadd 有序集合名 分数 元素名 /*添加集合的元素*/
zadd myset 10 php
zadd myset 20 mysql
2.zcard 有序集合名 /*获取有序集合中元素的总个数*/
zcard myset
3.zcount 有序集合名 最小值 最大值 /*获取分数值在最小和最大之间的元素的数量*/
zcount myset 1 15
4.zincrby 有序集合名 要增加的值 元素 /*使指定元素的分数增加要增加的值*/
zincrby myset 20 php /*当php这个元素不存在时,zincrby相当于zadd,也可以把传入的数值写为负数,相当于减*/
5.zrange 有序集合名 0 -1 /*获取所有的集合元素+对应的分数,从小到大排列
下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。
你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
*/
zrange myset 0 -1
6.zrevrange 有序集合名 0 -1 /*和zrange基本一样,但是它是从大到小排序*/
7.zrank 有序集合名 元素 /*从小到大排序,返回元素在集合中的排序,第一个返回0*/
8.zrevrank 有序集合名 元素 /*从大到小排序,返回元素在集合中的排序,第一个返回0*/
9.zscore 有序集合名 元素 /*返回指定元素的分数值,分数值返回的格式是字符串的格式*/
参考自http://www.runoob.com/redis/redis-sorted-sets.html