Redis的Set操作
集合的性质: 唯一性,无序性,确定性
注: 在string和link的命令中,可以通过range 来访问string中的某几个字符或某几个元素
但,因为集合的无序性,无法通过下标或范围来访问部分元素.
因此想看元素,要么随机先一个,要么全选
sadd key value1 value2 作用: 往集合key中增加元素 127.0.0.1:6379> sadd gender male female (integer) 2 127.0.0.1:6379> sadd gender yao yao (integer) 1 127.0.0.1:6379> sadd gender yao (integer) 0
smembers key 作用: 返回集中中所有的元素 127.0.0.1:6379> smembers gender 1) "male" 2) "female" 3) "yao"
srem value1 value2 作用: 删除集合中集为 value1 value2的元素 返回值: 忽略不存在的元素后,真正删除掉的元素的个数 127.0.0.1:6379> srem gender yao (integer) 1 127.0.0.1:6379> srem gender x c (integer) 0 127.0.0.1:6379> srem gender male x c (integer) 1
spop key//抽奖 作用: 返回并删除集合中key中1个随机元素 随机--体现了无序性 127.0.0.1:6379> sadd gender a b c d e f (integer) 6 127.0.0.1:6379> smembers gender 1) "d" 2) "c" 3) "a" 4) "f" 5) "female" 6) "b" 7) "e" 127.0.0.1:6379> spop gender "a" 127.0.0.1:6379> smembers gender 1) "d" 2) "c" 3) "f" 4) "female" 5) "b" 6) "e" 127.0.0.1:6379> spop gender "c" 127.0.0.1:6379> spop gender "f" 127.0.0.1:6379> spop gender "e"
srandmember key 作用: 返回集合key中,随机的1个元素. 127.0.0.1:6379> smembers gender 1) "d" 2) "c" 3) "a" 4) "f" 5) "female" 6) "e" 7) "b" 127.0.0.1:6379> srandmember gender "female" 127.0.0.1:6379> srandmember gender "f" 127.0.0.1:6379> srandmember gender "c" 127.0.0.1:6379> srandmember gender "c" 127.0.0.1:6379> srandmember gender "a" 127.0.0.1:6379> srandmember gender "d"
sismember key value 作用: 判断value是否在key集合中 是返回1,否返回0 127.0.0.1:6379> smembers gender 1) "d" 2) "c" 3) "a" 4) "f" 5) "female" 6) "e" 7) "b" 127.0.0.1:6379> sismember gender q (integer) 0 127.0.0.1:6379> sismember gender f (integer) 1
scard key 作用: 返回集合中元素的个数127.0.0.1:6379> scard gender(integer) 7
smove source dest value 作用:把source中的value删除,并添加到dest集合中 127.0.0.1:6379> sadd upper A B C (integer) 3 127.0.0.1:6379> sadd lower a b c (integer) 3 127.0.0.1:6379> smove upper lower A (integer) 1 127.0.0.1:6379> smembers upper 1) "C" 2) "B" 127.0.0.1:6379> smembers lower 1) "c" 2) "A" 3) "b" 4) "a"
sinter key1 key2 key3 作用: 求出key1 key2 key3 三个集合中的交集,并返回 sinterstore dest key1 key2 key3 作用: 求出key1 key2 key3 三个集合中的交集,并赋给dest suion key1 key2.. Keyn 作用: 求出key1 key2 keyn的并集,并返回 127.0.0.1:6379> sadd lisi a b c d (integer) 4 127.0.0.1:6379> sadd wang a c d e f (integer) 5 127.0.0.1:6379> sadd poly a c d g (integer) 4 127.0.0.1:6379> sinter lisi wang poly 1) "d" 2) "c" 3) "a" 127.0.0.1:6379> sinterstore common lisi wang poly (integer) 3 127.0.0.1:6379> smembers common 1) "d" 2) "c" 3) "a" 127.0.0.1:6379> sunion lisi wang poly 1) "d" 2) "g" 3) "c" 4) "a" 5) "f" 6) "e" 7) "b"
sdiff key1 key2 key3 作用: 求出key1与key2 key3的差集 即key1-key2-key3 127.0.0.1:6379> sdiff lisi wang poly 1) "b"
Redis的Set操作的更多相关文章
- redis的一些操作
public class WnsRedisFactory { private static Cache pool = null; private static JedisConnectionFacto ...
- python之redis和memcache操作
Redis 教程 Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理.Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据 ...
- redis的hash操作在集中式session中的应用
在集群部署时,为了高可用性的目的,往往把session进行共享,共享分为两种:session复制和集中式管理. redis在session集中式管理中可以起到比较大的作用. 制约session集中式共 ...
- Redis客户端API操作 Jedis详解
redis是一个著名的key-value存储系统,也是nosql中的最常见的一种.其实,个人认为,redis最强大的地方不在于其存储,而在于其强大的缓存作用. 我们可以把它想象成一个巨大的(多借点集群 ...
- Spring Boot 整合 Redis 实现缓存操作
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 产品没有价值,开发团队再优秀也无济于事 – <启示录> 』 本文提纲 ...
- 缓存数据库-redis数据类型和操作(list)
转: 狼来的日子里! 奋发博取 缓存数据库-redis数据类型和操作(list) 一:Redis 列表(List) Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素导列表的头部( ...
- redis键值操作
1.1. redis键值操作 1.1.1. keys patten 查询相应的key 可以精确的查,也可以模糊的查 1.1.1.1. 通配符:* ? [] 在redis里,模糊查询key的时候有3个通 ...
- redis 批量删除操作
redis 批量删除操作 需要在redis里面清空一批数据,redis没有支持通配符删除, 只有del key1 key2 ... 但是可以通配符获取 KEYS PATTERN 然后利用linux管道 ...
- thinkphp5.0上对redis的具体操作
一.环境搭建 首先先安装composer.thinkphp5.0版本.和redis的windows版本的redis程序或者linux版本的redis程序,linux安装教程: https://www. ...
- redis连接数据库进行操作
该项目需要的类目录 1.首先我们需要创建我们的实体类 2.放置我们的dao层,在里面写入方法 3.配置类Appconfig需要加入我们的JdbcTemplate方法,因为我们用的是spring,所以需 ...
随机推荐
- C++编程显示四则运算题目
题目:C++编程显示四则运算题目 设计思路:(1)让用户自己确定出题的数量,同时显示加减乘除四则运算. (2)考虑到用户可能只会一种运算,因此可以选择运算.
- Java下Web MVC的领跑者:SpringMVC
比较常用的MVC框架有Struts 和 SpringMVC. Struts 是Java Web MVC框架中曾经不争的王者.经过长达九年的发展,Struts占有了MVC框架中最大的市场份额.但是Str ...
- 关于通过JS识别浏览器类型的方法
JS检测浏览器类型的方法 网络上一般采用navigator.userAgent判断浏览器标识的办法,但是有个麻烦的问题是IE11不断升级之后,IE11的userAgent变成: "Moz ...
- 如何用javascript正则表达式验证身份证号码是否合法
在用户注册页面有些需求要求的比较严格,需要对身份证js验证是否合法,通过此功能严格此系统软件,从而过滤到很多水客.下面就此实现方法给大家讲解下. 很多时候我们都是通过一组正则表达式来判断用户输入的身份 ...
- bzoj 1800 暴力枚举
直接暴力枚举四个点,然后判断是否能组成矩形就行了 注意枚举的点的标号从小到大,保证不重复枚举 /**************************************************** ...
- BZOJ2457 BeiJing2011 双端队列
[问题描述] Sherry现在碰到了一个棘手的问题,有N个整数需要排序. Sherry手头能用的工具就是若干个双端队列. 她需要依次处理这N个数,对于每个数,Sherry能做以下两件事 ...
- PKUSC滚粗记
本来想考得这么烂还是别写了,后来想想毕竟是我高中难得的一次经历,靠脑子记的话我这脑残患者将来肯定会忘了啊……QwQ 好像跟我一样用这个题目的神犇都签了一本QwQ Day 0 来的路上我校其他三位OIe ...
- android控件---自定义带文本的ImageButton
由于SDK提供的ImageButton只能添加图片,不能添加文字:而Button控件添加的文字只能显示在图片内部:当我们需要添加文字在图片外部时就不能满足我们的需求了,顾只能自己写个自定义ImageB ...
- Leetcode#99 Recover Binary Search Tree
原题地址 中序遍历二叉搜索树,正常情况下所有元素都应该按递增排列,如果有元素被交换,则会出现前面元素大于后面的情况,称作反序.由于交换了两个节点,所以通常会有两处反序,但如果是两个相邻节点发生了交换, ...
- safeseh+dep保护绕过
[文章作者] :h_one [漏洞程序名称]:mplayer.exe [漏洞类型] :缓冲区溢出 [保护方式] :safeseh+dep [操作平台] ...