Redis系统学习之五大基本数据类型(Set(集合))

Set(集合)

存放值

  • sadd key value
    • 和java的Set一样是不存在相同的值的,存放相同的值会被覆盖
    • image

获取值

  • smembers key
    • 获取元素
    • image

获取元素数量

  • scard key
    • 获取数量
    • image

返回第一个集合与其他集合的差异(以第一个为准)

  • sdiff key key1
    • image
 

将给定集合的差异存储到指定的集合中

  • sdiffstore 目标set 基准set 对比set
    • 就是将上面的图的结果存储到新的set 中,如果原来存在,会被覆盖
    • image

返回指定set的交集

  • sinter key1 key2
    • 指定集合的交集
      • set(1,2,3,4,5)
      • set1(3,4,5,6,7)
      • 交集 3,4,5
    • image

将返回的交集存储到指定的集合中

  • sinterstore 目标set 基准set 对比set
    • 返回交集存储
    • 存储会覆盖指定的set
    • image

判断指定值是否存在指定的集合中

  • sismember key value
    • 存在返回1,不存在返回0
    • image

将指定集合的指定元素移动到指定目标集合中

  • smove 源集合 目标集合 值
    • 将6从set1 移动到set
    • image

随机移除集合中指定数量的元素

  • spop key 数量
    • 随机移除3个元素
    • image

随机返回集合中指定数量的元素

  • srandmember key 数量
    • 随机返回两个元素
    • image

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

  • srem key value[v循环,空格分割]
    • 移除指定的3和4
    • image

返回指定集合的并集

  • sunion key key1
    • 返回两个集合的并集
    • 其实对两个集合中的数据进行去重
    • image

将返回指定集合的并集进行存储

  • sunionstore 目标集合 key1 key2
    • 将set1 和 set的集合并集存储到setnew
    • image

使用场景:

  • 可以采用Set的并集,交集,差集实现
    • 交集:共同好友
    • 交集大于指定阈值,可以通过差集实现可能认识的好友

作者:彼岸舞

时间:202155

内容关于:Redis

本文属于作者原创,未经允许,禁止转发

原文地址:https://www.cnblogs.com/flower-dance/p/14731102.html