Redis常用命令(三)有序集合键、HyperLogLog键

  • zet 有序集合,元素为string类型,元素具有唯一性,不重复。每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序。没有修改操作,虽然每个元素必不相同,但是score可以相同
zadd key score1 member1 score2 member2 ...  # 添加
zadd fruits 1.0 apple 2.4 banana 4 watermelon 5 orange

# 返回指定范围内的元素,索引从左侧开始,第一个元素为0,
# 索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素;
# 当给定withscores选项时,元素和分值一并返回
zrange key start stop [withscores]  
zrange fruits 0 -1
zrange fruits 0 -1 withscores

zrevrange key start stop [withscores]  # 按照分值从大到小降序排列,其他同上
zrevrange fruits 0 -1 withscores

zrangebyscore key min max [withsocres] [limit offset count]  # 返回score值在min和max之间的成员
zrangebyscore fruits 5 9

zrevrangebyscore key max min [withsocres] [limit offset count]  # 按照分值降序排列,返回score值在max和min之间的成员
zrevrangebyscore fruits 5 4 withscores

zscore key member  # 返回成员member的score值
zscore fruits apple

zrem key member1 member2 ...  # 删除指定元素
zrem fruits banana watermelon

zremrangebyscore key min max  # 删除权重在指定范围的元素
zremrangebyscore fruits 1 3

zremrangebyrank key start stop  # 元素按照升序排列下,删除指定排名范围内的元素,排名从0开始
zremrangebyrank fruits 1 2

zincrby key increment member  # 为有序集合指定元素的分值加上增量increment,如果没有这个集合、元素,则直接创建
zincrby fruits 1 banana

zcard key   # 返回有序集合包含的元素数量
zcard fruits

zrank key member  # 返回指定元素在有序集合中的排名,其中排名按照元素的分值从小到大排序
zrank fruits apple   --> 1

zrevrank key member  # 返回成员在有序集合中的逆序排名,排名到0结束
zrevrank fruits apple  --> 3

zcount key min max  # 返回有序集合在升序排列下分值在min和max之间的元素数量
zcount fruits 1 4

zunionstore destkey numkeys key [key...]  # 计算并集,结果存储到destkey,numkeys指定进行计算的集合个数
zadd fruits-8-13 300 apple 200 banana 150 cherry
zadd fruits-8-14 250 apple 300 banana 100 cherry

zinterstore destkey numkeys key [key...]  # 计算交集,结果存储到destkey,numkeys指定进行计算的集合个数
zunionstore fruits-8-13&14 2 fruits-8-13 fruits-8-14  # 得到8月13、14两天所有水果的总数
  • HyperLogLog 使用常量空间估算大量元素的基数,即使输入元素的数量或体积非常非常大,计算基数所需的空间总是固定的,并且是很小的。每个HyperLogLog键花费12kb内存,可以计算接近2^64个基数,HyperLogLog只会根据输入元素来计算基数,而不会存储输入元素,所有它不能返回输入的各个元素
pfadd key member [member...]  # 将任意数量的元素添加到指定的HyperLogLog
pfadd unique::ip::counter 192.168.0.1
pfadd unique::ip::counter 192.168.10.1

pfcount key [key...]  # 当之给定一个HyperLogLog时,返回给定HyperLogLog的基数估算值;当给定多个HyperLogLog时,得出一个合并的HyperLogLog,并返回
pfcount unique::ip::counter

pfmerge destkey sourcekey [sourcekey...]  # 将多个HyperLogLog合并成一个HyperLogLog,合并后的HyperLogLog的基数估算是对所有HyperLogLog进行并集计算得出的
pfadd str1 apple banana cherry
pfadd str2 cherry durian mongo
pfmerge str1&str2 str1 str2
pfcount str1&str2
时间: 2024-10-12 19:24:55

Redis常用命令(三)有序集合键、HyperLogLog键的相关文章

Redis常用命令(四)数据库管理、键管理、订阅发布

### 数据库管理 keys pattern  # 查找键,参数通配符查找 keys *  # 查看所有键 keys n*  # 查看以n开头的所有键 keys *e  # 查看以e结尾的所有键 keys h?llo keys h[ae]llo exists name  # 查看name这个键是否存在,存在为1,不存在为0 type key  # 查看键对应的value的类型 type name del key1 key2 ...  # 删除键及对应的值 del addr rename key

自学总结redis第二部分(redis常用命令、高级命令特性以及与java代码的结合)

六.redis多数据类型介绍(常用命令) 6.1前提操作 #如果前面的redis环境没搭好,那么可以先暂时在 "http://try.redis.io/"中实践redis命令部分.   #为了测试方便,把redis登录密码暂时撤销   #redis一共分为五种基本数据类型:String,Hash,List,Set,ZSet #所有命令都可以到"http://www.redis.cn/commands.html"  去搜索到. #首先由于redis是一个基于key-v

redis常用命令、常见错误、配置技巧等分享

转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/117.html?1455860236 1. redis查看当前所有的key 代码如下: KEYS * 2. 查看当前redis的配置信息? 代码如下: CONFIG GET * 3. MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk

Redis常用命令与高级应用

附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9e" 127.0.0.1:6379> quit [[email protected] redis-2.8.6]# redisc --raw 127.0.0.1:6379> get xiaofei 小飞 127.0.0.1:6379> 5. sorted sets类型和操作 sort

Redis快速起步及Redis常用命令大全

本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的相关问题,为了更方便的与大家一起探讨与学习,每个章节均提供尽可能详细的示例源码及注释,所有示例源码均可在javacourse-redis-in-action找到相关帮助! 本章目标: 什么是Redis Redis数据结构 Redis常用命令 什么是Redis Redis是一个功能强大的非关系型内存数

Redis常用命令-list-set-zset

Redis常用命令 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)等 https://gitee.com/nmwork/RedisUtil 1.   Redis数据类型 1.1.  List类型 1.1.1.   简介 Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 232 - 1 个元素 (4294967295, 每

redis常用命令及高级特性

11.redis常用命令 keys * 返回所有的键 keys my* 模糊匹配 exists key 确认key是否存在 del key expire key time对现有的键设置过期时间[秒为单位] ttl key 查看过期时间,-1代表已过期 move 将当期数据库中的key移到其它数据库当中 select database_name 选择数据库 move key database_name persist key 取消过期时间,此时ttl key返回-1并不代表过期 randomkey

No-sql之redis常用命令

转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-value高性能存储系统,类似memcached,但是redis支持丰富的数据结构类型,并且其还支持数据持久化到磁盘. Redis is a data structure server. It is open-source, networked, in-memory, and stores keys wi

Redis 常用命令 大全

Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3Cschool https://www.w3cschool.cn/redis_all_about/redis_all_about-sfc726u6.html 3.Runoob https://www.runoob.com/redis/redis-commands.html 原文地址:https://