存儲Sorted-Setspa
Sorted-Set和Set的區別orm
Sorted-Set中的成員在集合中的位置是有序的排序
存儲Sorted-set經常使用命令索引
添加元素遊戲
得到元素rem
刪除元素it
範圍查詢擴展
擴展命令分頁
zadd 添加元素 裏面包括評分和值im
127.0.0.1:6379> zadd sort1 5 a 4 b 6 c
(integer) 3
咱們添加集合sort1 元素是a,b,c 評分分別是5,4,6
集合裏的排序是根據評分從小到大排序的;
zrange是查找元素 -1表明是最後一個
127.0.0.1:6379> zrange sort1 0 -1
1) "b"
2) "a"
3) "c"
假如咱們繼續添加元素
這裏分兩種狀況
假如次元素集合裏面已經有了,則覆蓋
咱們繼續添加b 此時評分改爲7
127.0.0.1:6379> zadd sort1 7 b
(integer) 0
經過zscore 獲取b的評分
127.0.0.1:6379> zscore sort1 b
"7"
發現已經修改了;
127.0.0.1:6379> zrange sort1 0 -1
1) "a"
2) "c"
3) "b"
假如添加的元素不在集合裏,則添加進去
127.0.0.1:6379> zadd sort1 9 d
(integer) 1
127.0.0.1:6379> zrange sort1 0 -1
1) "a"
2) "c"
3) "b"
4) "d"
刪除元素zrem
127.0.0.1:6379> zrem sort1 b
(integer) 1
127.0.0.1:6379> zrange sort1 0 -1
1) "a"
2) "c"
3) "d"
zcard 查看集合裏的元素個數
127.0.0.1:6379> zcard sort1
(integer) 3
withscores 把評分也顯示出來
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "a"
2) "5"
3) "c"
4) "6"
5) "d"
6) "9"
zrevrange 降序排列
127.0.0.1:6379> zrevrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "c"
4) "6"
5) "a"
6) "5"
咱們再加兩個元素
127.0.0.1:6379> zadd sort1 10 e 5 f
(integer) 2
zremrangebyrank 根據排名來刪除元素 刪除3個
127.0.0.1:6379> zremrangebyrank sort1 0 2
(integer) 3
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "e"
4) "10"
再添加元素
127.0.0.1:6379> zadd sort1 11 f 16 g 18 h
(integer) 3
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "e"
4) "10"
5) "f"
6) "11"
7) "g"
8) "16"
9) "h"
10) "18"
zremrangebyscore 根據具體評分範圍來刪除元素
127.0.0.1:6379> zremrangebyscore sort1 10 16
(integer) 3
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "h"
4) "18"
再添加元素
127.0.0.1:6379> zadd sort1 20 i 23 j 30 k
(integer) 3
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "h"
4) "18"
5) "i"
6) "20"
7) "j"
8) "23"
9) "k"
10) "30"
zrangebyscore 根據評分範圍來查找元素
127.0.0.1:6379> zrangebyscore sort1 18 23 withscores
1) "h"
2) "18"
3) "i"
4) "20"
5) "j"
6) "23"
limit 限定查找起始 相似分頁
127.0.0.1:6379> zrangebyscore sort1 18 23 withscores limit 0 2
1) "h"
2) "18"
3) "i"
4) "20"
zincrby 給指定元素加分
127.0.0.1:6379> zincrby sort1 5 h
"23"
127.0.0.1:6379> zrange sort1 0 -1 withscores
1) "d"
2) "9"
3) "i"
4) "20"
5) "h"
6) "23"
7) "j"
8) "23"
9) "k"
10) "30"
zcount 查找指定評分範圍的元素個數
127.0.0.1:6379> zcount sort1 20 23
(integer) 3
Sorted-Set使用場景
大型在線遊戲積分排行榜
構建索引數據