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常用命令的更多相关文章

  1. redis学习-散列表常用命令(hash)

    redis学习-散列表常用命令(hash)   hset,hmset:给指定散列表插入一个或者多个键值对 hget,hmget:获取指定散列表一个或者多个键值对的值 hgetall:获取所欲哦键值以及 ...

  2. redis学习(二) redis数据结构介绍以及常用命令

    redis数据结构介绍 我们已经知道redis是一个基于key-value数据存储的数据结构数据库,这里的key指的是string类型,而对应的value则可以是多样的数据结构.其中包括下面五种类型: ...

  3. 解析Redis操作五大数据类型常用命令

    摘要:分享经常用到一些命令和使用场景总结,以及对Redis中五大数据类型如何使用cmd命令行的形式进行操作的方法. 本文分享自华为云社区<Redis操作五大数据类型常用命令解析>,作者:灰 ...

  4. Redis的数据类型及其常用命令

    快速入门Redis 首先安装redis: windows下安装redis Linux下安装redis 1. 什么是redis Redis属于nosql(非关系型数据库) 关系型数据库是基于关系表的数据 ...

  5. redis的安装和常用命令

    一.redis的安装 1.windows安装redis 下载地址:https://github.com/MSOpenTech/redis/releases. Redis 支持 32 位和 64 位.这 ...

  6. Redis 几个类型常用命令

    Redis 字符串(String) 下表列出了常用的 redis 字符串命令: 序号 命令及描述1 SET key value 设置指定 key 的值2 GET key 获取指定 key 的值.3 G ...

  7. Redis基本类型与常用命令

    Redis基本类型一共有五类: 字符串类型(string): 散列类型(hash): 列表类型(list): 集合类型(sort): 有序集合类型(zset): 在redis中,所有的类型都是被以键值 ...

  8. 【redis】05Redis的常用命令及高级应用

    Redis常用命令     Redis提供了非常丰富的命令,对数据库和个中数据类型进行操作, 这些命令呢,可以在Linux终端使用. 分为两大类的命令,一种是键值相关的命令,一种是服务器相关的命令, ...

  9. Kafka学习之四 Kafka常用命令

    Kafka常用命令 以下是kafka常用命令行总结: 1.查看topic的详细信息 ./kafka-topics.sh -zookeeper 127.0.0.1:2181 -describe -top ...

随机推荐

  1. 折腾newifi3 d2笔记

    1.忘记密码,恢复出厂 通电开机,等正常运行后,长按RESET大约6~8秒,见所有灯开始一起慢闪,可松手等重启就是出厂状态了,出厂IP是:192.168.99.1 2.免拆机刷breed 首先要打开s ...

  2. MySQL8.0.x免安装配置

    目录 概述 下载 配置环境变量 编辑配置文件 初始化MySQL 安装MySQL系统(Windows)服务 初始化MySQL 启动MySQL 修改默认密码 开启远程登录 概述 MySQL从5.7一下子跳 ...

  3. sklearn中的SVM

    scikit-learn中SVM的算法库分为两类,一类是分类的算法库,包括SVC, NuSVC,和LinearSVC 3个类.另一类是回归算法库,包括SVR, NuSVR,和LinearSVR 3个类 ...

  4. Mac gitk安装与优化

    一.mac系统安装gitk gitk是git的一个bin工具,如果git不包含gitk只能说明当前使用的git版本过老. 因此我们只需要安装最新的git就可以了.安装git方法如下: 首先安装brew ...

  5. 结对项目-WordCount

    结对作业: 成员:201631062115(me),201631062613(partner) 代码地址:https://gitee.com/ackary/WordCount 作业的链接地址:http ...

  6. 模拟Http请求的几种常用方式

    HttpURLConnection HttpClient JSOUP Nutch 后续补充用法……

  7. C语言作业04-数组

    1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量学习体会 1.2.1学习体会 通过本章的学习,学会了几种用于循环的语句,能够利用循环解决复杂的问题,但对于几种循环的使用并不熟练,其中对于c ...

  8. 4. Go常量

    常量就是那些不可以改变的值 Go语言中定义常量的方式: const a = "admin" 则 a 就是一个常量,但实际上其后面的 "admin" 也是一个字符 ...

  9. ajax 常用功能 结构分解

    ajax 和后台交互基本结构 0.触发的事件. 1.获取参数 2.url 3.请求方法get/post 4.对返回结果的处理 .done如果有返加 .fail 失败 $(function () { / ...

  10. 数组引用:C++ 数组做参数 深入分析

    转载:https://blog.csdn.net/jiangxinyu/article/details/7767065 在 C++中,数组永远不会按值传递,它是传递第一个元素,准确地说是第 0个 的指 ...