Redis集合操作
Redis的集合以无序的形式存储多个各不相同的元素
(常用的集合命令)
SADD : SADD key-name item [item ...]----------将一个或多个元素添加到集合里,并返回添加的元素数量(重复的元素不会被添加)
SREM : SREM key-name item [item ..]---------从一个集合里面移除一个或多个元素,并返回被移除的元素数量
SISMEMBER : SISMEMBER key-name item -------检查元素item是否存在于集合key-name里
SCARD : SCARD key-name --------------------------返回集合包含的元素数量
SMEMBERS : SMEMBERS key-name ---------------返回集合包含的所有元素
SRANDMEMBER : SRANDMEMBER key-name [count] ---------------从集合里面随机返回一个或多个元素,当count为正数时,返回的元素不会重复,当count为负数时,返回的元素可能重复
SPOP : SPOP key-name ------------------------------随机移除集合中的一个元素,并返回被移除的元素
SMOVE : SMOVE source-key dest-key item -------------------------如果集合source-key包含元素item,那么从集合source-key里面移除元素item,并将元素item添加到集合dest-key中:如果item被成功移除,那么命令返回1,否则返回0
>>> conn.sadd('set-key','a','b','c')
3
>>> conn.srem('set-key','c','d')
1
>>> conn.srem('set-key','c','d')
0
>>> conn.smembers('set-key')
set(['a', 'b'])
>>> conn.scard('set-key')
2
>>> conn.smove('set-key','set-key2','a')
True
>>> conn.smove('set-key','set-key2','c')
False
>>> conn.sadd('set-key','a')
1
>>> conn.smove('set-key','set-key2','a')
True
>>> conn.smembers('set-key')
set(['b'])
>>> conn.smembers('set-key2')
set(['a'])
(用于组合和处理多个集合的redis命令)
SDIFF : SDIFF key-name [key-name ...] ------------------返回那些存在于第一个集合,但不存在于其他集合中的元素(数学上的差集运算)
SDIFFSTORE : SDIFFSTORE dest-key key-name [key-name..] --------------将那些存在于第一个集合但并不存在其他集合中的元素存储到dest-key集合中
SINTER : SINTER key-name [key-name ...] -----------------------------------返回那些同时存在所有集合中的元素(数学上的交集运算)
SINTERSTORE : SINTERSTORE dest-key key-name [key-name..] --------------将那些同时存在所有集合中的元素存储到dest-key集合中
SUNION : SUNION key-name [key-name..] ------------------------------------返回那些存在于任意一个集合中的元素(数学上的并集运算)
SUNIONSTORE : SUNIONSTORE dest-key key-name [key-name..] --------------将那些存在于任意一个集合中的元素存储到dest-key集合中
>>> conn.sadd('skey1','a','b','c','d')
4
>>> conn.sadd('skey2','c','d','e','f')
4
>>> conn.sdiff('skey1','skey2')
set(['a', 'b'])
>>> conn.sinter('skey1','skey2')
set(['c', 'd'])
>>> conn.sunion('skey1','skey2')
set(['a', 'c', 'b', 'e', 'd', 'f'])
Redis集合操作的更多相关文章
- Redis 集合操作
1.SCARD key 返回集合 key 的基数(集合中元素的数量). 2.SDIFFSTORE destination key [key ...] 这个命令的作用和 类似,但它将结果保存到 des ...
- [Redis-CentOS7]Redis集合操作(四)
SADD 集合添加 127.0.0.1:6379> SADD bbs discuz.net (integer) 1 127.0.0.1:6379> SADD bbs "tiany ...
- 【springboot】【redis】springboot结合redis,操作List集合实现时间轴功能
springboot结合redis,操作List集合实现时间轴功能
- python学习之-- redis模块操作 集合和有序集合
redis 模块操作之 集合set和有序集合zset Set 集合操作,不允许重复的列表sadd(name,value):name对应的集合中添加元素scard(name):获取name对应的集合中元 ...
- Redis集合的常用操作指令
Redis集合的常用操作指令 Sets常用操作指令 SADD 将指定的元素添加到集合.如果集合中存在该元素,则忽略. 如果集合不存在,会先创建一个集合然后在添加元素. 127.0.0.1:6379&g ...
- php redis数据库操作类
<?php namespace iphp\db; use iphp\App; /** * redis操作类 * 说明,任何为false的串,存在redis中都是空串. * 只有在key不存在时, ...
- 《Redis 数据操作》
一:字符串类型(string) - 应用场景 - 用于常规计数,常规的 key-value 存储. - 常用操作 常用操作 设置一个值为(字符串类型) SET key value 设置一个值并设置过 ...
- SpringBoot入门 (七) Redis访问操作
本文记录学习在SpringBoot中使用Redis. 一 什么是Redis Redis 是一个速度非常快的非关系数据库(Non-Relational Database),它可以存储键(Key)与 多种 ...
- Redis(三)Redis基本命令操作与API
一Redis 连接 Redis 连接命令主要是用于连接 redis 服务. 实例 以下实例演示了客户端如何通过密码验证连接到 redis 服务,并检测服务是否在运行: redis 127.0.0.1: ...
随机推荐
- Android-Could not find method implementation() for arguments
当AndroidStudio加载工程的时候:报以下错误: 详细错误: Could not find method implementation() for arguments [file collec ...
- MariaDB安装、初始化及常用操作
1.Linux下安装与初始化 #安装 yum install mariadb-server #设置编码 vim /etc/my.cnf [mysqld]character-set-server=utf ...
- .net framework 4.5 +steeltoe+ springcloud(三)实现Hystrix断路器
在基于.net framework的服务客户端实现断路器功能,基本项目创建步骤可以参照我的另一篇发现和调用服务的笔记,地址:http://www.cnblogs.com/troytian/p/8621 ...
- Windows远程桌面连接ubuntu 16
一.安装Xrdp Windows远程桌面使用的是RDP协议,所以ubuntu上就要先安装Xrdp,在ubuntu软件中心搜索xrdp安装. 安装xrdp的同时会自动安装vnc4server,xbase ...
- .net图表之ECharts随笔06-这才是最简单的
今天搞柱形图的时候,发现了一个更简单的用法.那就是直接使用带all的那个js文件 基本步骤: 1.为ECharts准备一个具备大小(宽高)的Dom 2.ECharts的js文件引入(echarts-a ...
- Bootstrap框架下实现图片切换
准备图片,把相关记录添加至数据库表中: 创建一个存储过程,获取所有记录: 在ASP.NET MVC专案中,部署Bootstrap环境...... 然后创建一个model: using System; ...
- Linux Compile Multiple C++ Files
Compile Two Files: $ CC -c Main.cc Sales_item.cc # by default generates a.exe # some compilers gener ...
- execution表达式--小坑
之前使用的都是eclipse,今天开始复习spring了,开始接触IDEA,在复习过程中,出了点小事, 复习到AOP开发时,有半自动和全自动之说,之前我看那期视频里面没讲过全自动,我就自己再那敲Dem ...
- linux设置静态ip地址
首先我们使用ifconfig查看网卡配置信息 我们进入需要设置的网卡的配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33 我们可以看到默认的配置是d ...
- python爬虫在解析不带引号的json报错的问题解决方案
本例中环境: python3.6.6 demjson-2.2.4 如不看废话请直接看3(下面红体字) 1.近期在爬取代理验证代理的时候发生一个Bug, 就是在验证代理的时候返回的是如下字符串, {ip ...