Redis集合类型
集合是元素无序且唯一的列表
命令
增加元素
SADD key member [member ...] > SADD letters a
(integer) 1
> SADD letters a b c
(integer) 2
- 返回值是成功加入的元素数量(忽略的元素不计算在内)
删除元素
SREM key member [member ...] SREM letters c d
(integer) 1
获得集合中的所有元素
SMEMBERS key > SMEMBERS letters
1) "b"
2) "a"
判断元素是否在集合中
SISMEMBER key member > SISMEMBER letters a
(integer) 1
> SISMEMBER letters d
(integer) 0
集合运算
SDIFF key [key ...] // 差集 SINTER key [key ...] // 交集 SUNION key [key ...] // 并集
获得集合中元素的个数
SARD key > CARD letters
(integer) 2
进行集合运算并将结果存储
SDIFFSTORE destination key [key ...] // 差集 SINTERSTORE destination key [key ...] // 交集 SUNIONSTORE destination key [key ...] // 并集
随机获得集合中的元素
SRANDMEMBER key [count] > SRANDMEMBER letters 2
- 当 count 为正数时,SRANDMEMBER 会随机从集合里获得 count 个不重复的元素,如果 count 的值大于集合中的元素个数,则 SRANDMEMBER 会返回集合中的全部元素。
- 当 count 为负数时,SRANDMEMBER 会随机从集合里获得 |count| 个的元素,这些元素有可能相同。
从集合中随机弹出一个元素
SPOP key > SPOP letters
"b"
Redis集合类型的更多相关文章
- Redis从基础命令到实战之集合类型(Set)
Redis集合类型的基础功能也是存储字符串列表,和列表类型的区别是字符串不能重复且没有顺序.当然,存储元素唯一性也可以通过应用程序保证,单从这一点上并没有体现出对比列表类型的特点. 其实,集合类型的一 ...
- Redis常用命令入门5:有序集合类型
有序集合类型 上节我们一起学习了集合类型,感受到了redis的强大.现在我们接着学Redis的最后一个类型——有序集合类型. 有序集合类型,大家从名字上应该就可以知道,实际上就是在集合类型上加了个有序 ...
- Redis常用命令入门4:集合类型
集合类型 之前我们已经介绍过了最基本的字符串类型.散列类型.列表类型,下面我们一起学习一下集合类型. 集合类型也是体现redis一个比较高价值的一个类型了.因为Redis的集合类型,所以我们可以很容易 ...
- Redis从基础命令到实战之有序集合类型(SortedSet)
有序集合类型是Redis五种数据类型中最高级的.也是最复杂的类型.有序集合具有集合类型的特性,在其基础上给每个元素关联了一个分值,或称为权重,操作时既可以在添加元素时指定分值,也可以单独修改集合中某一 ...
- 15天玩转redis —— 第六篇 有序集合类型
今天我们说一下Redis中最后一个数据类型 “有序集合类型”,回首之前学过的几个数据结构,不知道你会不会由衷感叹,开源的世界真好,写这 些代码的好心人真的要一生平安哈,不管我们想没想的到的东西,在这个 ...
- redis 的使用 ( set集合类型操作)
set 集合类型 释义: redis 的 set 是 string 类型的无序集合 set 元素最大可以包含(2的32次方-1)个元素 关于 set 集合类型除了基本的添加删除操 ...
- redis数据类型-集合类型
集合类型 在集合中的每个元素都是不同的,且没有顺序. 一个集合类型(set)键可以存储至多2 32-1个(相信这个数字对大家来说已经很熟悉了)字符串. 集合类型的常用操作是向集合中加入或删除元素.判断 ...
- Redis自学笔记:3.6入门-有序集合类型
3.6有序集合类型 3.6.1介绍 在集合类型基础上,为集合中每个元素都关联了一个分数,故可以获得 分数最高(最低)的前N个元素,可以获得指定范围内的元素等 有序集合中每个元素不同,但它们的分数却可以 ...
- Redis自学笔记:3.5入门-集合类型
3.5集合类型 3.5.1介绍 在集合中的每个元素都是不同的,且没有顺序 表3-4集合类型和列表类型的对比 - 集合类型 列表类型 存储内容 至多232-1个字符串 至多232-1个字符串 有序性 否 ...
随机推荐
- 在tomcat启动时解析xml文件,获取特定标签的属性值,并将属性值设置到静态变量里
这里以解析hibernate.cfg.xml数据库配置信息为例,运用dom4j的解析方式来解析xml文件. 1.在javaWeb工程里新建一个java类,命名为GetXmlValue.java,为xm ...
- linux 环境下安装 MySQL
参考: Linux安装MySQL5.7 注意: 安装后 出现 navicat MySQL连接Linux下MySQL的及2003错误 需要看下 虚拟机的防火墙是否关闭!!!
- webpack原理类型问题
1.webpack底层原理 (实现一个webpack) 步骤:1.拿到入口文件的代码并读出来转化为js对象(抽象语法术parser)2.拿到所有模块的依赖 ‘./message.js’,放进数组中 引 ...
- encypt dataset
import getoptimport sysimport uuidimport hashlibimport csvdef getIds(totals,encrypt): seed=set() for ...
- request库解析中文
官网地址: http://cn.python-requests.org/zh_CN/latest/ 高级用法 本篇文档涵盖了 Requests 的一些高级特性. 会话对象 会话对象让你能够跨请求保持某 ...
- MySQL8.0 ROW_NUMBER、RANK、DENSE_RANK窗口函数 分组排序排名
MySQL8.0 (ROW_NUMBER)窗口函数 排名 暂时理解函数意义,后面再进行优化,如果有关变量排序,查看这个大哥的 mysql的分组排序和变量赋值顺序 先查看一个例子: # 按照每科课程分数 ...
- C++:面向对象的相关概念
对象: 一般意义上的对象:是现实世界中一个实际存在的事物 面向对象方法中的对象:是系统中用来描述客观事物的一个实体 抽象与分类: 分类所依据的原则:抽象 抽象出同一类对象的共同属性和行为,形成类 类与 ...
- git push的时候报错: Out of memory, malloc failed (tried to allocate 82037333 bytes)
原因:上传的文件过大,这里我上传的文件有10G+所以报了上面的错误 解决方法:依次运行:git config --global pack.threads 1 git,git config --glob ...
- js--滑动块
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- exp之shellcode的理解
原题请见 https://www.jarvisoj.com/challenges from pwn import * io = remote("pwn2.jarvisoj.com" ...