Redis中有序列表(ZSet)相關命令


redis語序集合和集合set是一樣內部valuestring類型的集合,有序不允許重復元素
但是,zset的每個元素有一個double類型的分數(score).redis正是靠這個分數對元素從小到大排序.
zset中元素唯一但是分數可以重復

zadd

zdd key score value [score2 value2] ...
zset中添加一個后多個元素

127.0.0.1:6379> zadd student 9 zhangsan
(integer) 1

如果元素之前已存在,那么相當於更新分數,那么如果分數也和之前的一樣,就相當於什么都不做

查詢

zcard

zcard key
獲取有序集合內部的成員數

127.0.0.1:6379> zcard student
(integer) 4

zcount

zcount key min max
計算有序集合指定分數區間的成員數

zlexcount

zlexcount key min max
在有序集合中計算指定字典區間的元素數量

zrank

zrank key value
查詢值在有序列表中的索引位置

zrange

zrangge key start end
通過索引區間返回該區間的元素

127.0.0.1:6379> zrange zset1 0 5
1) "a"
2) "b"
3) "c"
4) "t"
5) "h"
6) "k"

修改

zincrby

zincrby key increment value
指定元素的分數自增,increment 為增量

刪除

zrem

zrem key value [value2] ...
移除有序集合中一個或多個元素

zremrangebyrank

zremrangebyrank key start stop
根據分數排名移除元素

127.0.0.1:6379> zrange zset1 0 5
1) "a"
2) "b"
3) "c"
4) "t"
5) "h"
6) "k"
127.0.0.1:6379> zremrangebyrank zset1 2 3
(integer) 2

zremrangebyscore

zremrangebyscore key min max
根據分數范圍去移除元素


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM