一、Set 类型

  Redis set对外提供的功能与list类似是一个列表的功能,特殊之处在于set是可以自动排重的,当你需要存储一个列表数据,又不希望出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内的重要接口,这个也是list所不能提供的。

  Redis的Set是string类型的无序集合。它底层其实是一个value为null的hash表,所以添加,删除,查找的复杂度都是O(1)。

 

二、常用操作

  

sadd <key> <value1> <value2>...
将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略
smembers <key>
取出该集合的所有值
sismember <key> <value>
判断集合 <key> 是否为含有该 <value> 值,有返回1,没有返回0
scard <key>
返回该集合中的元素个数
srem <key><value1><value2>...
删除集合中的某个元素
spop <key>
随机从该集合中吐出一个值
srandmember <key> <n>
随机从该集合中取出 n 个值,不会从集合中删除
sinter <key1><key2>
返回两个集合的交集元素
sunion <key1><key2>
返回两个集合的并集元素
sdiff <key1><key2>
返回两个集合的差集元素

  交集:A ∩ B

  并集:A ∪ B

  差集:A与B的差集:A-(A∩B)【差集有先后顺序之分】

 

 

 

posted on 2022-01-12 13:45  格物致知_Tony  阅读(54)  评论(0编辑  收藏  举报

目录导航