Redis(八):Zset有序集合数据类型详解

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

有序集合的成员是唯一的,但分数(score)却可以重复。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

实例

redis 127.0.0.1:6379> ZADD runoobkey 1 redis
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 2 mongodb
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
(integer) 1
redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
(integer) 0
redis 127.0.0.1:6379> ZADD runoobkey 4 mysql
(integer) 0
redis 127.0.0.1:6379> ZRANGE runoobkey 0 10 WITHSCORES1) "redis"
2) "1"
3) "mongodb"
4) "2"
5) "mysql"
6) "4"

Zset在set的基础上加了一个值

1、Zset有序集合常用命令

1.1、zadd

127.0.0.1:6379> zadd mysset 1 one
(integer) 1
127.0.0.1:6379> zadd mysset 2 two 3 three
(integer) 2
127.0.0.1:6379> ZRANGE mysset 0 -1
1) "one"
2) "two"
3) "three"

1.2、ZRANGEBYSCORE

127.0.0.1:6379> zadd salary 2500 xiaohong
(integer) 1
127.0.0.1:6379> zadd salary 5000 zhang3
(integer) 1
127.0.0.1:6379> zadd salary 500 lizhenhi
(integer) 1
127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf	//按照从小到大排序
1) "lizhenhi"
2) "xiaohong"
3) "zhang3"
127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf withscores	//按照从小到大排序,并且附带值
1) "lizhenhi"
2) "500"
3) "xiaohong"
4) "2500"
5) "zhang3"
6) "5000"
127.0.0.1:6379> ZREVRANGE salary 0 -1	//从大到小进行排列
1) "zhang3"
2) "lizhenhi"
127.0.0.1:6379> ZRANGEBYSCORE salary -inf 2500 withscores	//判断小于固定值的降序排列
1) "lizhenhi"
2) "500"
3) "xiaohong"
4) "2500"
127.0.0.1:6379> 

1.3、zrem

127.0.0.1:6379> ZRANGE salary 0 -1
1) "lizhenhi"
2) "xiaohong"
3) "zhang3"
127.0.0.1:6379> ZREM salary xiaohong	//移除xiaohong
(integer) 1
127.0.0.1:6379> ZRANGE salary 0 -1
1) "lizhenhi"
2) "zhang3"

1.4、ZCARD

127.0.0.1:6379> ZCARD salary	//获取有序集合中的个数
(integer) 2

1.5、ZCOUNT

127.0.0.1:6379> ZCOUNT salary 0 5000	//查询固定区间的长度
(integer) 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/535886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis(九):Redis特殊类型之geospatial

朋友的定位,附近的人,位置共享,打车距离 redis在3.2就已经推出了geospatial!两地之间的距离,方圆几里的人!都可以用它实现 这个需要把你所在地的经纬度输进去,我们可以在http://www.jsons.cn/ln…

九个案例简述Web设计原则:简洁清晰

作者 | 百度搜索用户体验中心 《Web设计指南》分为设计原则、基础规范两方面主要内容,同时会提供相应的实际案例及资源下载。欢迎关注OpenWeb开发者,订阅《Web设计指南》。 前言 《Web设计指南》是专门为广大Web内容生态提供一套简单实用的设计指南&a…

Redis(十):Redis特殊类型之Hyperloglog基数统计

redis 2.8.9版本就更新了Hyperloglog数据结构! Hyperloglog:基数统计算法!0.81%的错误率,不过统计大量数据可以忽略! 在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 …

W3C近期要闻:与Mozilla MDN合作联合开发Web平台文档

作者 | W3C中国 「OpenWeb开发者」依托于BOW(Brillant Open Web)团队,是一个专门的 Web 技术建设小组,致力于推动 Open Web 技术的发展,将不定期为读者同步W3C要闻。 注:由于微信不支持外链,了解…

Redis(十一):Redis特殊类型之Bitmap位图

1、位存储 只有0和1两种状态! Bitmap 位图:数据结构,都是操作二进制位来进行记录 登录/未登录 活跃/不活跃 打卡 两个状态的都可以使用Bitmap! 2、常用命令 2.1、用Bitmap来记录 周一到周日的登陆情况 127.0.0.1:6379> …

移动Web加速技术月报第2期

作者 | Brilliant Open Web 团队breezet、shdong 编辑 | 尾尾 为推进Web技术的发展,Brilliant Open Web团队特推出每月一期的《移动Web加速技术月报》,该月报将整理较流行的移动Web加速技术,并跟进各项技术的进展和发展方向,以期…

Redis(十二):Redis事务的基本操作

1、Redis事务概念 Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。 总结说&…

大型网站HTTPS 实践(一)| HTTPS 协议和原理

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索,默认会将 HTTP 请求跳转成 HTTPS。本文就着重介绍了 HTTPS 协议涉及到的重要知识点和平时不太容易理解的盲区,希望能对大家理解 HTTPS 协议有帮助。百度 HTTPS 性能优化涉及到大量内容…

MongoDB(一):简介

1、MongoDB概述 MongoDB 是由C语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一款流行的开源文档型…

大型网站HTTPS实践:HTTPS对性能的影响

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索,默认会将 HTTP 请求跳转成 HTTPS。百度 HTTPS性能优化涉及到大量内容,从前端页面、后端架构、协议特性、加密算法、流量调度、架构和运维、安全等方面都做了大量工作。本系列的文章将…

Redis(十三):Redis实现乐观锁

1、悲观锁与乐观锁 乐观锁和悲观锁是一种程序设计思想,而不是具体的代码。乐观锁和悲观锁应用的场景有很多,在数据库和多线程等等都会用到。 悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次…

PWA将带来新一轮大前端技术洗牌?

作者 | 彭星 编辑 | 尾尾 一、回顾历史:移动时代之初,Web遭遇两大枷锁 Web 在移动时代遭遇两大枷锁1.Web 在移动时代遭遇两大枷锁 当 Web 自信满满,步入移动时代之时,它还没有做好充足的准备。 回顾 2014 到 2015 年那段时间…

Redis(十四):Jedis

Jedis是Redis官方推荐的Java连接开发工具。要在Java开发中使用好Redis中间件&#xff0c;必须对Jedis熟悉才能写成漂亮的代码&#xff01; 1、新建Maven工程&#xff0c;导入对应依赖 <dependencies><dependency><groupId>redis.clients</groupId>&l…

高级精致智能快捷的Web设计原则案例

作者 | 百度搜索用户体验中心 《Web设计指南》分为设计原则、基础规范两方面主要内容&#xff0c;同时会提供相应的实际案例及资源下载。关注OpenWeb开发者&#xff0c;回复“设计指南”&#xff0c;即可获取已发布资源。 设计原则之高级精致 简洁并不等于粗糙没有细节&#x…

Linux系列(一):简介与目录结构

1、Linux简介 1.1、起源 Linux出现于1991年&#xff0c;是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成 1.2、Linux特点 多用户&#xff0c;多任务&#xff0c;丰富的网络功能&#xff0c;可靠的系统安全&#xff0c;良好的可移植性&#xff0c;…

日常问题——解决mac下 ssh: connect to host localhost port 22: Connection refused

问题描述&#xff1a; 今天使用ssh 登陆本地时即使用ssh localhost出现了 ssh: connect to host localhost port 22: Connection refused 错误&#xff01; 然后在网上看了很多的解决方案&#xff0c;也都是千篇一律&#xff0c;大多数是针对ssh安没安装的&#xff1f;那肯定是…

大型网站的HTTPS实践:基于协议和配置的优化

作者 | 百度HTTPS技术支持团队 百度已经上线了全站 HTTPS 的安全搜索&#xff0c;默认会将 HTTP 请求跳转成 HTTPS。百度 HTTPS性能优化涉及到大量内容&#xff0c;在前端页面、后端架构、协议特性、加密算法、流量调度、架构和运维、安全等方面都做了大量工作。本系列的文章将…

初识Hadoop:大数据与Hadoop概述

1、大数据概述 大数据&#xff08;big data&#xff09;&#xff0c;IT行业术语&#xff0c;是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信…

W3C近期要闻:W3C战略重点报告新版发布

作者 | W3C中国 「OpenWeb开发者」依托于BOW&#xff08;Brillant Open Web&#xff09;团队&#xff0c;是一个专门的 Web 技术建设小组&#xff0c;致力于推动 OpenWeb 技术的发展&#xff0c;将不定期为读者同步W3C要闻。 注&#xff1a;由于微信不支持外链&#xff0c;了解…

Hadoop的安装及配置

PS:最新安装教程请参考Hadoop的安装与配置&#xff08;设置单节点群集&#xff09;详细教程 1、Hadoop安装前准备工作&#xff1a; 在开始Hadoop安装与配置之前&#xff0c;需要准备的环境&#xff1a;Linux系统、配置JDK环境变量。 2、安装 我们可以到Apache Hadoop的官网ht…