redis学习-集合set常用命令
redis学习-集合set常用命令
1.sadd:添加一个元素到集合中(集合中的元素无序的并且唯一)

2.smembers:查看集合中所有的元素(上图事例)
3.srem:删除结合中指定的元素

4.scard:返回集合元素的数量

5.SRandMember
如果不填写返回个数,默认是1,如果填写的数字大于集合的size,那么返回集合的所有元素
如果填写的是负数,如果绝对值大于集合的size,那么返回值里会出现一个元素多次出现的情况。
如果key不存在,则返回nil

smove:将一个集合的元素转移到另一个集合中

spop:从集合中随机移出一个元素

sismember:判断元素是否在集合中,如果存在 返回1,否则返回0

sscan:使用游标获取集合中的值
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
@Test public void scantest(){ Jedis jedis=new Jedis("127.0.0.1",6379);// jedis.select(2);// for (int i = 0; i < 100; i++) {// jedis.sadd("scantest","scanceshi"+i);// }//// System.out.println(m2); int x=1; int y=0; int sum=0; ScanParams scanParams=new ScanParams(); scanParams.match("scanceshi51"); Set<String> strings=new TreeSet<String>(); for(;;){ ScanResult<String> scantest = jedis.sscan("scantest", y, scanParams); System.out.println(scantest.getStringCursor().toString()+"----------取出:"+scantest.getResult().size()+"----当前总数:"+(scantest.getResult().size()+sum)); sum+=scantest.getResult().size(); for (String o : scantest.getResult()) { strings.add(o); } if(scantest.getStringCursor().toString().equals("0")) break; y= Integer.parseInt(scantest.getStringCursor().toString()); } System.out.println(strings.size()); jedis.quit(); } |

从0开始,一直循环,会返回两个集合,第几个是游标的位置,如果为0那么说明执行结束,如果不为0,那么下次以第一个集合返回的值作为下次开始的位置如下

集合 并/交/差运算
SUNION:集合并运算

SUNIONSTORE:求并集后存到一个新的集合(如果结果集存入到已有的集合,那么会覆盖以后的数据集合)

sinter/sinterstore同上

sdiff/sdiffstore同上

redis学习-集合set常用命令的更多相关文章
- redis学习-散列表常用命令(hash)
redis学习-散列表常用命令(hash) hset,hmset:给指定散列表插入一个或者多个键值对 hget,hmget:获取指定散列表一个或者多个键值对的值 hgetall:获取所欲哦键值以及 ...
- redis学习(二) redis数据结构介绍以及常用命令
redis数据结构介绍 我们已经知道redis是一个基于key-value数据存储的数据结构数据库,这里的key指的是string类型,而对应的value则可以是多样的数据结构.其中包括下面五种类型: ...
- 解析Redis操作五大数据类型常用命令
摘要:分享经常用到一些命令和使用场景总结,以及对Redis中五大数据类型如何使用cmd命令行的形式进行操作的方法. 本文分享自华为云社区<Redis操作五大数据类型常用命令解析>,作者:灰 ...
- Redis的数据类型及其常用命令
快速入门Redis 首先安装redis: windows下安装redis Linux下安装redis 1. 什么是redis Redis属于nosql(非关系型数据库) 关系型数据库是基于关系表的数据 ...
- redis的安装和常用命令
一.redis的安装 1.windows安装redis 下载地址:https://github.com/MSOpenTech/redis/releases. Redis 支持 32 位和 64 位.这 ...
- Redis 几个类型常用命令
Redis 字符串(String) 下表列出了常用的 redis 字符串命令: 序号 命令及描述1 SET key value 设置指定 key 的值2 GET key 获取指定 key 的值.3 G ...
- Redis基本类型与常用命令
Redis基本类型一共有五类: 字符串类型(string): 散列类型(hash): 列表类型(list): 集合类型(sort): 有序集合类型(zset): 在redis中,所有的类型都是被以键值 ...
- 【redis】05Redis的常用命令及高级应用
Redis常用命令 Redis提供了非常丰富的命令,对数据库和个中数据类型进行操作, 这些命令呢,可以在Linux终端使用. 分为两大类的命令,一种是键值相关的命令,一种是服务器相关的命令, ...
- Kafka学习之四 Kafka常用命令
Kafka常用命令 以下是kafka常用命令行总结: 1.查看topic的详细信息 ./kafka-topics.sh -zookeeper 127.0.0.1:2181 -describe -top ...
随机推荐
- Linux ansible 常用模块二
fetch 将远程机器上的文件拉取到本地,以ip或者主机名生成目录,并保留原来的目录结构 dest #目标地址src #源地址ansible web -m fetch -a "dest ...
- ucos中消息队列的应用(二)
继续说任务间的通信. 本次的任务是在ISR中发送一个消息给任务,ucos的代码中的是非常之简洁和容易理解啊.创建,释放,等待,非常好理解,不再赘述. 说说我遇到的问题,数据帧接收完之后,向消息队列发送 ...
- 如何在 Koa 中获取 client 的 ip 以及 port
ctx.body.remoteAddress ctx.body.remotePort
- Centos 7 Ntop 流量分析 安装
Centos 6 安装 Ntop:https://www.cnblogs.com/weijie0717/p/4886314.html 一.安装 1.添加EPEL 仓库 # yum install ep ...
- python_Tkinter1
一个更详细的Tkinter笔记: 首先是最重要基础的,如何 创建一个窗口 窗口代码: #coding:utf8 import Tkinter show = Tkinter.Tk() show.titl ...
- 算法练习LeetCode初级算法之数学
Fizz Buzz class Solution { public List<String> fizzBuzz(int n) { List<String> list=new L ...
- linux,无法进行写操作怎么办?read-only file system
一句命令搞定: mount -o remount rw /
- zyupload四种不同的PHP上传demo
PHP结合zyupload多功能图片上传实例,支持拖拽和裁剪.可以自定义高度和宽度,类型,远程上传地址等. zyupload上传基本配置 1 $("#zyupload").zyUp ...
- websocket初识
一.官网 官网地址:http://www.websocket.org/ 二.websocket初识demo <input id="sendTxt" type="te ...
- ios UITableView的style的区别与用法,以及分割线的显示与隐藏
******************tableview style****************************************************** // tableview ...