Redis学习笔记(集合类型)

罗晓磊 · May 9, 2020

介绍

在集合中的每个元素都是不同的,且没有顺序。一个集合类型(set)键可以存储至多2的32次方减1个字符串。

常用命令

  1. 增加元素,如果键不存在则会自动创建。
    SADD key member [member ...]
    
  2. 删除元素,SREM命令用来从集合中删除一个或多个元素,并返回删除成功的个数
    SREM key member [member ...]
    
  3. 判断元素是否在集合中,当值存在时SISMEMBER命令返回1,当值不存在或键不存在时返回0
    SISMEMBER key member
    
  4. 集合差集,所有属于A且不属于B的元素构成的集合,多个集合依次取前两个先执行差集,结果与后者执行差集,以此类推
    SDIFF key [key ...]
    
  5. 集合交集,代表所有属于A且属于B的元素构成的集合,多个集合依次取前两个先执行交集,结果与后者执行交集,以此类推
    SINTER key [key ...]
    
  6. 集合并集,代表所有属于A或属于B的元素构成的集合,多个集合依次取前两个先执行并集,结果与后者执行并集,以此类推
    SUNION key [key ...]
    
  7. 获取集合中元素个数
    SCARD key
    
  8. 差集存放至destination健中
    SDIFFSTORE  destination key [key ...]
    
  9. 交集存放至destination健中
    SINTERSTORE  destination key [key ...]
    
  10. 并集存放至destination健中
    SUNIONSTORE  destination key [key ...]
    
  11. 随机获得集合中的元素,可以传递count参数来一次随机获得多个元素
    • 当count为正数时,SRANDMEMBER会随机从集合里获得count个不重复的元素。如果count的值大于集合中的元素个数,则SRANDMEMBER会返回集合中的全部元素。
    • 当 count 为负数时,SRANDMEMBER会随机从集合里获得|count|个的元素,这些元素有可能相同。
      SRANDMEMBER key [count]
      
  12. 从集合中随机弹出一个元素,返回元素的值并删除它
    SPOP key
    

参考书目

  • 《Redis入门指南》李子骅 著

Twitter, Facebook