• (基本知识)Redis 集合(Set)相关命令函数


    Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据

    1.Sadd 将一个或多个成员元素加入到集合中,已经存在于集合的成员元素将被忽略  返回被添加到集合中的新元素的数量,不包括被忽略的元素

    127.0.0.1:6379> get yset
    (nil)
    127.0.0.1:6379> sadd yset q1 q2 q3
    (integer) 3
    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379>

    2.Scard :返回集合中元素的数量  key不存返回0

    127.0.0.1:6379> scard yset
    (integer) 3
    127.0.0.1:6379> scard ysetd
    (integer) 0
    127.0.0.1:6379> 

    3.Sdiff :返回给定集合之间的差集。不存在的集合 key 将视为空集  差集取第一个key中有的 其他key中没有的

    127.0.0.1:6379> sadd ysetd q1 b1 b2
    (integer) 3
    127.0.0.1:6379> sdiff yset ysetd
    1) "q2"
    2) "q3"
    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379> 

    4.Sdiffstore : 将给定集合之间的差集存储在指定的集合中。如果指定的集合 key 已存在,则会被覆盖   返回结果集中的元素数量

    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3" 
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "b1"
    127.0.0.1:6379> sdiffstore thp yset ysetd
    (integer) 2
    127.0.0.1:6379> smembers thp
    1) "q2"
    2) "q3"
    127.0.0.1:6379> 

    5.Sinter 返回给定所有给定集合的交集  不存在的集合 key 被视为空集。 当给定集合当中有一个空集时,结果也为空集

    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "b1"
    127.0.0.1:6379> sinter yset ysetd
    1) "q1"
    127.0.0.1:6379> 

    6.Sismember 判断成员元素是否是集合的成员   如果成员元素是集合的成员,返回 1  否则返回0

    127.0.0.1:6379> sismember yset q1
    (integer) 1
    127.0.0.1:6379> sismember yset q15
    (integer) 0
    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379> 

    7.Smembers 返回集合中的所有的成员。 不存在的集合 key 被视为空集合

    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379> 

    8.Smove 命令将指定成员 member 元素从 source 集合移动到 destination 集合

    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    3) "q3"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "b1"
    127.0.0.1:6379> smove yset ysetd q3
    (integer) 1
    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "q3"
    4) "b1"
    127.0.0.1:6379> 

    9.Sinterstore 将给定集合之间的交集存储在指定的集合中。如果指定的集合已经存在,则将其覆盖

    127.0.0.1:6379> smembers yset
    1) "q1"
    2) "q2"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "q3"
    4) "b1"
    127.0.0.1:6379> sinterstore opq yset ysetd
    (integer) 1
    127.0.0.1:6379> smembers opq
    1) "q1"
    127.0.0.1:6379> 

    10.Spop :用于移除集合中的指定 key 的一个或多个随机元素,移除后会返回移除的元素 可以设置移除的数量

    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "q3"
    4) "b1"
    127.0.0.1:6379> spop ysetd
    "b1"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    2) "b2"
    3) "q3"
    127.0.0.1:6379> spop ysetd 2
    1) "b2"
    2) "q3"
    127.0.0.1:6379> smembers ysetd
    1) "q1"
    127.0.0.1:6379> 

    11.Srandmember 用于返回集合中的一个随机元素  而不对集合进行任何改动

    127.0.0.1:6379> sadd yset a1 a2 a3 a4 a5 a6
    (integer) 6
    127.0.0.1:6379> smembers yset
    1) "a2"
    2) "a1"
    3) "a4"
    4) "a6"
    5) "a5"
    6) "a3"
    127.0.0.1:6379> srandmember yset
    "a6"
    127.0.0.1:6379> srandmember yset 2
    1) "a3"
    2) "a6"
    127.0.0.1:6379> smembers yset
    1) "a4"
    2) "a6"
    3) "a5"
    4) "a3"
    5) "a1"
    6) "a2"
    127.0.0.1:6379> 

    12.Srem 命令用于移除集合中的一个或多个成员元素,不存在的成员元素会被忽略  返回被成功移除的元素的数量,不包括被忽略的元素

    127.0.0.1:6379> smembers yset
    1) "a4"
    2) "a6"
    3) "a5"
    4) "a3"
    5) "a1"
    6) "a2"
    127.0.0.1:6379> srem yset a1
    (integer) 1
    127.0.0.1:6379> smembers yset
    1) "a4"
    2) "a6"
    3) "a5"
    4) "a3"
    5) "a2"
    127.0.0.1:6379> srem yset a2 a3
    (integer) 2
    127.0.0.1:6379> smembers yset
    1) "a4"
    2) "a6"
    3) "a5"
    127.0.0.1:6379> 

    13.Sunion 返回给定集合的并集。不存在的集合 key 被视为空集

    127.0.0.1:6379> sadd kk a1 a2 a3
    (integer) 3
    127.0.0.1:6379> sadd ll a2 a3 a4
    (integer) 3
    127.0.0.1:6379> sunion kk ll
    1) "a1"
    2) "a2"
    3) "a4"
    4) "a3"
    127.0.0.1:6379> 

    14.Sunionstore 将给定集合的并集存储在指定的集合 destination 中。如果 destination 已经存在,则将其覆盖

    127.0.0.1:6379> smembers kk
    1) "a3"
    2) "a2"
    3) "a1"
    127.0.0.1:6379> smembers ll
    1) "a4"
    2) "a3"
    3) "a2"
    127.0.0.1:6379> sunionstore op kk ll 
    (integer) 4
    127.0.0.1:6379> smembers op
    1) "a1"
    2) "a2"
    3) "a4"
    4) "a3"
    127.0.0.1:6379> 

    15.Sscan 命令用于迭代集合中键的元素   返回按照正则匹配出的元素

    127.0.0.1:6379> smembers op
    1) "a1"
    2) "a2"
    3) "a4"
    4) "a3"
    127.0.0.1:6379> sscan op 0 match a*
    1) "0"
    2) 1) "a4"
       2) "a3"
       3) "a1"
       4) "a2"
  • 相关阅读:
    ElastaticSearch学习笔记(三) ----- 聚合查询
    ElastaticSearch学习笔记(二) ----- DSL查询与过滤
    ElastaticSearch学习笔记(一) ----- 基础概念
    BizTalk连接SAP方法
    解决spark日志清理问题
    Spark Standalone模式 高可用部署
    @Data注解踩坑之大小写
    SVN No such revision *
    svn: Base checksum mismatch on
    Bean的原始版本与最终版本不一致?记一次Spring IOC探索之旅
  • 原文地址:https://www.cnblogs.com/ddf128/p/12197751.html
Copyright © 2020-2023  润新知