Redis 有序集合和集合一樣也是string類型元素的集合,且不允許重複的成員。
不同的是每個元素都會關聯一個double類型的分數。redis正是通過分數來爲集合中的成員進行從小到大的排序。
有序集合的成員是唯一的,但分數(score)卻可以重複。
集合是通過哈希表實現的,所以添加,刪除,查找的複雜度都是O(1)。
- 增
ZAdd key score1 member1 [score2 member2]
//添加
- 刪
ZRem key member1 [member2]
//刪除元素
ZRemRangeByLex key min max
//按照字典,刪除區間內元素
ZRemRangeByRank key start stop
//移除排名區間內元素
ZRemRangeByScore key min max
//移除某個分數段中的元素
- 改
ZIncrBy key increment member
//分數加
- 查
ZCard key
//返回成員數
ZCount key min max
//指定區間分數的成員數
ZInterStore aimKey numbers key [key]
//交集存到aimKey,numbers指定了後面key的數目
ZLexCount key min max
//(min,max)中的成員數,min不是分數
ZRange key start stop [Withscores]
//返回區間內所有成員
//0:第一個成員 -1:倒數第一個
//withscores:顯示分數
ZRangeByLex key min max [limit offset count]
//通過字典區間返回有序集合的成員
ZRangeByScore key min max [WithScores] [limit]
//返回分數區間內元素
ZRank key member
//返回索引
ZRevRange key start stop [withScores]
//返回有序集中指定區間內的成員,通過索引,分數從高到底
ZRevRangeByScore key max min [Withscores]
//返回分數區間內元素,分數高到低
ZrevRank key member
//返回指定成員排名(降序)
ZScore key member
//返回分數
ZUnionStore aimKey mumbers key1 key2
//並集
ZScan key cursor [Match patterm]
//迭代