Redis的value类型介绍——zset

zset是有序的set集合,这个有序和list不一样,这个zset通常是升序/降序,排列的规则是赋予元素中的权重,比如分数。对于zset的元素要求仍然是互异的。

zset命令

1.zadd

添加的时候,既要添加元素,也要添加分数(权重)(pair)

xx:只更新元素的权重 nx只添加没有的元素,不做更新

lt:只更新以存在的元素权重,只有新权重比旧权重小才会更新,不会阻止添加新元素

gt:大了才更新

ch:不仅返回新增元素个数,还会返回被修改的元素个数

incr:基于现有的元素进行运算

如果什么选项都不带,就是无元素则添加,有元素则更新。

  1. zcard key 返回zset元素个数

3.zcount key min max 返回权重在范围[min,max] 的元素个数,如果想排除边界可以写成(min,(max,还有一个类似命令,zrangebyscore,根据分数找元素

4.zrange key start stop [withscore] :返回下标范围内的元素(已排序) 加上选项就是带着权重一起返回

5.zpopmax key [count] 删除分数最高的元素(count个)(如果分数相同会根据member字典序排序)

6.bzpopmax key [key2...] timeout 阻塞版本的zpopmax

7.zpopmin,bzpopmin同理

8.zrank key member 获取member在zset的排名(下标)

9.zscore key member获取member的分数

10.zrem key member [member...] 删除元素

  1. zincrby key n element 给element元素分数加n

12.zinter、zunion、zdiff(交并差)

相关推荐
muddjsv2 小时前
SQLite3 核心命令全解析 (从入门到精通)
数据库
難釋懷2 小时前
认识NoSQL
数据库·nosql
xiaolyuh1232 小时前
Redis 核心业务流程
java·redis·spring
亿坊电商2 小时前
利于SEO优化的CMS系统都有哪些特点?
前端·数据库
阿阿阿安2 小时前
MySQL(一)数据库风险操作场景总结
数据库·mysql
心丑姑娘2 小时前
使用ClickHouse时的劣质SQL样例
数据库·sql·clickhouse
↘"LYong2 小时前
Centos升级Redis(7.4.1 ---> 7.4.6)
linux·redis
什么都不会的Tristan2 小时前
redis篇
数据库·redis·缓存
only°夏至besos2 小时前
MySQL 运维实战:常见问题排查与解决方案
运维·数据库·mysql