Redis-Zset常用命令
Redis-Zset常用命令
类型说明
zset类型的特点:set的基础之上,每个value值前面加了一个score分数值
存储格式大致是这样:k1 : {10 v1 20 v2 30 v3}
zadd
添加1个或多个成员
127.0.0.1:6379> zadd k1 1 v1 2 v2 # 数字为score值 后面为具体的值 2 127.0.0.1:6379> zrange k1 0 -1 v1 v2
zrange
遍历集合的成员(不展示score值)
127.0.0.1:6379> zrange k1 0 -1
v1
v2
zrevrange
倒序遍历集合的成员
127.0.0.1:6379> zrange k1 0 -1 # 正序遍历 v1 v2 127.0.0.1:6379> zrevrange k1 0 -1 # 倒序遍历 v2 v1
zrangebyscore
遍历集合中指定区间(按照score值区间)的成员
127.0.0.1:6379> zrangebyscore k1 1 1 # 遍历k1中score值在1-1区间的值
v1
127.0.0.1:6379> zrangebyscore k1 1 2 # 遍历k1中score值在1-2区间的值 v1 v2
zscore
查看指定元素的score分数值
127.0.0.1:6379> zscore k1 v2 # 查看元素值为v2的score分数 2
zcard
查看指定key中存储的元素个数
127.0.0.1:6379> ZRANGE k1 0 -1 #k1中的元素 v1 v2 v10 v11 127.0.0.1:6379> ZCARD k1 # k1中的元素个数 4
zrem
删除指定的成员
127.0.0.1:6379> ZRANGE k1 0 -1 # 删除前 v1 v2 v10 v11 127.0.0.1:6379> zrem k1 v1 # 删除k1中值为v1的成员 1 127.0.0.1:6379> ZRANGE k1 0 -1 # 删除后 v2 v10 v11
zincrby
将指定值的score分数值增加N
127.0.0.1:6379> ZSCORE k1 v2 # 增加前 2 127.0.0.1:6379> ZINCRBY k1 10 v2 # 将k1中值为v2的成功score分数值增加10 12 127.0.0.1:6379> ZSCORE k1 v2 # 增加后 12
zcount
统计score分数在某个区间的成员个数
127.0.0.1:6379> zcount k1 0 100 # 统计k1中score分数在0-100区间的成员个数 3
zmpop
在某个key中按照score分数值从小到大/从大到小的顺序,弹出N个成员,成员从原set中删除,并将删除的成员作为命令的返回值
127.0.0.1:6379> zmpop 1 k1 min count 1 # 第一个参数“1”:表示一共操作1个key,第二个参数为key的名字,第三个参数min代表弹出score分数值最小的成员,最后一个参数count 1 表示只弹出1个。如果填2则表示从小到大顺序弹出两个成员 k1 v10 10
zrank
返回某个指定值的索引
127.0.0.1:6379> zrank k1 v11 # 查看k1中值为v11的成员的索引 0
zrevrank
返回某个指定值的倒序索引
127.0.0.1:6379> zrevrank k1 v11 # 查看k1中值为v11成员的倒序索引 1