Redis 四:存储类型之有序集合
有序集合似乎更大的操作是由于加了一个叫做“分子”的东西
事实上就好像普通的数据,只是为这个数据加了一个纯数字的标识,
通过操作这些标识来得到我们想要的数据!
分子可以是整形,也可以是双精度浮点型:
====================================================
.zadd num a b c
添加一个叫num的有序集合,a元素为100分,b元素为80分....
.zscore num a
获取num集合中元素名为a的分子
====================================================
.zrange num
返回num集合中从0索引开始到2索引!按从小到大的顺序
返回 c b a
.zrange num withscores
跟上面一样,只不过会将分子也同时输出出来
c b a
.zrevrange 跟上面两个一样的用法,区别是从大到小排序
====================================================
.zrangebyscore num
返回分子80 - 100之间的所有元素
.zrangebysocre num (
返回分子81 - 100之间的所有元素,加半个括号代表不包含当前端点
.上述2个命令可以加上withscores,把分子跟元素同时显示出来
=====================================================
.zrangebysocre num limit
获取num集合中分子60 - 200之间的前2个(索引0开始,取2个)
=====================================================
.zincrby num a (用负数就可以减分)
给num集合中元素名为a的分子+
.zcard num 获取num集合中元素个数
.zcount num 获取num集合中分子80到200间共有多少个元素
.zrem num a 删除a
.zremrangebyrank num
删除num集合从索引0开始到索引2位置的3个元素(包括分子一并删除)
.zremrangebysocre num
删除num集合中分子在40到200之间的所有元素(包括分子一并删除)
.zrank num a
返回将num中的元素按照分子从小到大排序后,a的元素的位置
zrevrank num a
相反,从大到小排序
.zinterstore num5 num2 num
将num2与num中对应元素的分子相加,将结果存入到num5中
zadd num1 a b c
zadd num2 c a b
zinterstore num3 num1 num2
zrange num3 - withscores
返回:
c b a
.zinterstore num5 num2 num aggregate min
跟上述一样,只不过只需要最小的值参与
返回:
c b a
.zinterstore num5 num2 num aggregate max
最大值参与
Redis 四:存储类型之有序集合的更多相关文章
- Redis数据类型使用场景及有序集合SortedSet底层实现详解
Redis常用数据类型有字符串String.字典dict.列表List.集合Set.有序集合SortedSet,本文将简单介绍各数据类型及其使用场景,并重点剖析有序集合SortedSet的实现. Li ...
- Redis的存储类型、集群架构、以及应用场景
什么是redis redis是一种支持Key-Value等多种数据结构的存储系统.可用于缓存.事件发布或订阅.高速队列等场景.该数据库使用ANSI C语言编写,支持网络,提供字符串.哈希.列表.队列. ...
- 直接在安装了redis的Linux机器上操作redis数据存储类型--对Sorted-Sets操作
一.概述: Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中.它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数(score ...
- Redis命令拾遗五(有序集合)
本文版权归博客园和作者吴双本人共同所有,博客园蜗牛NoSql系列分享 http://www.cnblogs.com/tdws/tag/NoSql/ Sorted Set 有序集合—Sorted Set ...
- 直接在安装了redis的Linux机器上操作redis数据存储类型--String类型
一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...
- Redis 四:存储类型之无序集合
.sadd num a b c 向num集合中添加abc三个元素 .srem num b 从num集合中删除b元素 .smembers num 获取num集合中所有的元素 .sismember num ...
- 直接在安装了redis的Linux机器上操作redis数据存储类型--set类型
一.概述: 在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加.删除或判断某一元素是否存在等操作.需要说明的是,这些操作的时间复 ...
- Redis常用操作--------SortedSet(有序集合)
1.ZADD key score member [[score member] [score member] ...] 将一个或多个 member 元素及其 score 值加入到有序集 key 当中. ...
- redis命令之 ----SortedSed(有序集合)
ZADD ZADD key score member [[score member] [score member] ...] 将一个或多个 member 元素及其 score 值加入到有序集 key ...
随机推荐
- mysql和oracle的mybatis操作
1.Oracle.MySQL插入时返回下一个主键的操作 Oracle:<insert id="insert" parameterClass="ROLE"& ...
- c语言描述简单的线性表,获取元素,删除元素,
//定义线性表 #define MAXSIZE 20 typedef int ElemType; typedef struct { ElemType data[MAXSIZE]; //这是数组的长度, ...
- C# 发送邮件方法2
一. 发送邮件程序:(使用System.Web.Mail下的类) "; //SMTP服务密码 strFrom = "jailu@163.com"; //发送方邮件地址 C ...
- JS常用的设计模式(13)——组合模式
组合模式又叫部分-整体模式,它将所有对象组合成树形结构.使得用户只需要操作最上层的接口,就可以对所有成员做相同的操作. 一个再好不过的例子就是jquery对象,大家都知道1个jquery对象其实是一组 ...
- ORA-12518 TNS:监听程序无法分发客户机连接 解决办法
查询的脚本: select count(*) from v$process; --取得数据库目前的进程数. select value from v$parameter where name = 'pr ...
- Android IOS WebRTC 音视频开发总结(五五)-- 音视频通讯中的抗丢包与带宽自适应原理
本文主要分析webrtc中的抗丢包与带宽自适应原理,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help 文章内容主要来自中国电信北京研究院丁博士在 ...
- ipv4、ipv6的socket同时监听“bind: Address already in use”的解决方法
创建ipv4和ipv6的socket,同时监听某个端口的ipv4和ipv6报文,运行时bind函数执行失败,提示“bind: Address already in use”.原因:ipv6的socke ...
- c#操作xml增删改查
1.首先新建一个xml文件(Root是我写上的) 2. 3.直接上代码,更直观 (1)初始化xml /// <summary> /// 初始化xml /// </summary> ...
- ie8以下不兼容document.getElementsByName解决方法
在IE8以认为只有文本标签才有name属性的,一些元素标签用document.getElementsByName获取不到DOM,如DIV,span等,这里做一下兼容. HTML: <div na ...
- 遇到困难 jsp代码onclick="javascript:return(checklogin());"报错
<script language="javascript"> function checklogin() { if (document.getElementById(& ...