Redis学习笔记(六)有序集合进阶
2024-08-30 14:45:47
1、基础操作
ZCARD(获取成员数量)
ZINCRBY key_name num member(将member的分数加num)
ZCOUNT key_name min max(获取分数在min与max之间的成员数量)
ZRANK/ZREVRANK key_name member(获取member在升序/降序集合中的排名)
ZSCORE key_name member(获取member的分数)
ZREMRANGEBYRANK key_name start stop(移除有序集合中排名介于start与stop之间的成员)
ZREMRANGEBYSCORE key_name min max(移除有序集合中分数介于min与max之间的成员)
root@localhost:~# redis-cli
127.0.0.1:> zadd zset a b c d
(integer)
127.0.0.1:> zcard zset
(integer)
127.0.0.1:> zincrby zset - c
""
127.0.0.1:> zscore zset c
""
127.0.0.1:> zrevrank zset a
(integer)
127.0.0.1:> zrank zset a
(integer)
127.0.0.1:> zremrangebyrank zset
(integer)
127.0.0.1:> zremrangebyrank zset
(integer)
127.0.0.1:> zrange zset - withscores
) "c"
) ""
) "d"
) ""
127.0.0.1:> zremrangebyscore zset
(integer)
127.0.0.1:> zcount zset
(integer)
2、交并集
ZINTERSTORE/ZUNIONSTORE destination num_of_key key1 [key2...] [WEIGHTS weight1 [weight2...]] [AGGREGATE SUM|MIN|MAX] (给定集合进行交集/并集运算)
WEIGHTS表示为每个给定的有序集指定一个乘法因子,每个给定有序集的所有成员的分数在传递给聚合函数之前都要先乘以该因子,默认为1。
AGGREGATE指定结果集的聚合方式。默认使用的参数SUM,表示将分数之和作为结果集中该成员的分数。如果使用MIN或者MAX,表示取分数中的最小值或最大值作为结果的分数。
root@localhost:~# redis-cli
127.0.0.1:> zadd zset1 a b c
(integer)
127.0.0.1:> zadd zset2 c b e
(integer)
127.0.0.1:> zinterstore zset_i zset1 zset2
(error) ERR syntax error
127.0.0.1:> zinterstore zset_i zset1 zset2
(integer)
127.0.0.1:> zrange zset_i - withscores
) "c"
) ""
) "b"
) ""
127.0.0.1:> zunionstore zset_u zset1 zset2 aggregate max
(integer)
127.0.0.1:> zrange zset_u - withscores
) "a"
) ""
) "c"
) ""
) "b"
) ""
) "e"
) ""
最新文章
- 初识html5的localStorage本地存储
- CSS 日常问题总结
- Spring学习总结(五)——Spring整合MyBatis(Maven+MySQL)二
- 【转】WCF与Web API 区别(应用场景)
- IIC驱动分析
- GDI 开发的准备工作
- 在程序异常中记录堆栈信息(使用ExWatcher)
- 与众不同 windows phone (29) - Communication(通信)之与 OData 服务通信
- python pip包管理
- 【kafka】Java连接出现Connection refused: no further information的解决方法
- ThinkPHP数据库操作相关
- http-cookie、session、Token
- Python Machine Learning-Chapter3
- 解决sql中上下左右backspace不能用的方法
- Java代码操作HDFS测试类
- Spark-自定义排序
- Kconfig详解
- 使用Idea工具nodeJS+mysql开发项目
- js_md5加密和base64的加密解密
- Port-knocking 简单教程
热门文章
- android 一个TextView设置多种颜色
- hdu 4398 Template Library Management(贪心+stl)
- hadoop datanode启动失败(All directories in dfs.data.dir are invalid)
- dos窗口出现error:could not open ...jvm.cfg解决方法
- 收集几个Android CalendarView非常用属性
- LRESULT 数据类型
- BZOJ3895 rock
- 洛谷 - P2055 - 假期的宿舍 - 最大流
- POJ2371【水题】
- 2016 Multi-University Training Contest 1 GCD【RMQ+二分】