美文网首页
Redis的基本类型之一:Set

Redis的基本类型之一:Set

作者: 程序员小杰 | 来源:发表于2020-07-11 13:51 被阅读0次

    Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的。

    1、sadd key member1 [member2]

    向集合添加一个或多个成员

    127.0.0.1:6379> sadd k1 a b c a
    (integer) 3
    

    2、smembers key

    返回集合中的所有成员

    127.0.0.1:6379> smembers k1
    1) "c"
    2) "b"
    3) "a"
    

    3、scard key

    获取集合的成员数

    127.0.0.1:6379> scard k1
    (integer) 3
    

    4、sismember key member

    判断 member 元素是否是集合 key 的成员

    127.0.0.1:6379> sismember k1 a
    (integer) 1   #返回1代表就是
    127.0.0.1:6379> sismember k1 d
    (integer) 0  #0代表不是
    

    5、srem key member1 [member2

    移除集合中一个或多个成员

    127.0.0.1:6379> srem k1 a
    (integer) 1
    127.0.0.1:6379> smembers k1
    1) "c"
    2) "b"
    

    6、spop key [count]

    移除并返回集合中的一个或者多个随机元素

    127.0.0.1:6379> sadd k1 a d e f
    (integer) 4
    
    127.0.0.1:6379> smembers k1
    1) "d"
    2) "a"
    3) "b"
    4) "e"
    5) "f"
    
    127.0.0.1:6379> spop k1
    "a"
    127.0.0.1:6379> smembers k1
    1) "b"
    2) "d"
    3) "e"
    4) "f"
    
    127.0.0.1:6379> spop k1 2
    1) "f"
    2) "d"
    127.0.0.1:6379> smembers k1
    1) "b"
    2) "e"
    

    7、srandmember key [count]

    返回集合中一个或多个随机数,并不会移除元素

    127.0.0.1:6379> srandmember k1
    "e"
    

    8、smove source destination member

    将 member 元素从 source 集合移动到 destination 集合(destination 可以不存在)

    127.0.0.1:6379> smove k1 k2 a
    (integer) 1
    

    9、sdiff key1 [key2]

    返回给定所有集合的差集(受集合先后顺序的影响)

    127.0.0.1:6379> sdiff k1 k2
    1) "b"
    2) "k1"
    3) "d"
    4) "c"
    5) "e"
    6) "f"
    127.0.0.1:6379> sdiff k2 k1
    1) "a"
    

    10、sinter key1 [key2]

    返回给定所有集合的交集

    127.0.0.1:6379> sinter k2 k1
    (empty list or set)
    127.0.0.1:6379> sadd k2 b k1
    (integer) 2
    127.0.0.1:6379> sinter k2 k1
    1) "k1"
    2) "b"
    

    11、sdiffstore destination key1 [key2]

    返回给定所有集合的差集并存储在 destination中

    127.0.0.1:6379> sdiffstore k3 k1 k2
    (integer) 4
    127.0.0.1:6379> smembers k3
    1) "c"
    2) "d"
    3) "e"
    4) "f"
    

    12、sinterstore destination key1 [key2]

    返回给定所有集合的交集并存储在 destination 中

    127.0.0.1:6379> sinterstore k4 k1 k2
    (integer) 2
    127.0.0.1:6379> smembers k4
    1) "b"
    2) "k1"
    

    13、sunion key1 [key2]

    返回所有给定集合的并集

    127.0.0.1:6379> sunion k1 k2
    1) "d"
    2) "k1"
    3) "b"
    4) "c"
    5) "a"
    6) "e"
    7) "f"
    

    14、sunionstore destination key1 [key2]

    所有给定集合的并集存储在 destination 集合中

    127.0.0.1:6379> sunionstore k5 k1 k2
    (integer) 7
    127.0.0.1:6379> smembers k5
    1) "d"
    2) "k1"
    3) "b"
    4) "c"
    5) "a"
    6) "e"
    7) "f"
    

    15、sscan key cursor [MATCH pattern] [COUNT count]

    迭代集合中的元素
    cursor - 游标。
    pattern - 匹配的模式。
    count - 指定从数据集里返回多少元素,默认值为 10 。

    127.0.0.1:6379> sadd k6 gongj yuanj gong yuan
    (integer) 4
    127.0.0.1:6379> sscan k6 0 match g*
    1) "0"
    2) 1) "gong"
       2) "gongj"
    
    
    127.0.0.1:6379> sscan k6 1 match g*
    1) "0"
    2) 1) "gongj"
    127.0.0.1:6379> 
    

    以上所以只是均来自于大佬江南一点雨
    个人博客:http://www.javaboy.org/

    image.png

    相关文章

      网友评论

          本文标题:Redis的基本类型之一:Set

          本文链接:https://www.haomeiwen.com/subject/vmficktx.html