欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Redis学习-set数据结构

程序员文章站 2023-10-24 11:25:22
set 是无序集合,最大可以包含(2 的 32 次方-1)个元素。set 的是通过 hash table 实现的, 所以添加,删除,查找的复杂度都是 O(1) sadd key member 添加一个 string 元素到 key 对应 set 集合中,成功返回 1,如果元素以及 在集合中则返回 0 ......

set 是无序集合,最大可以包含(2 的 32 次方-1)个元素。set 的是通过 hash table 实现的, 所以添加,删除,查找的复杂度都是 O(1)

sadd key member 添加一个 string 元素到 key 对应 set 集合中,成功返回 1,如果元素以及 在集合中则返回 0,key 对应的 set 不存在则返回错误

Redis学习-set数据结构

Redis学习-set数据结构

继续添加,返回0表示添加失败,说明set集合,不允许添加重复元素

smembers smembers smembers key 返回 key 对应 set 的所有元素,结果是无序的

Redis学习-set数据结构

 sinter key1 key2 …… keyN 返回所有给定 key 的交集

Redis学习-set数据结构

sinterstore dstkey key1 ....... keyN 返回所有给定 key 的交集,并保存交集存到 dstkey 下

Redis学习-set数据结构

sunion key1 key2 ...... keyN 返回所有给定 key 的并集

Redis学习-set数据结构

sunionstore dstkey key1 ...... keyN 返回所有给定 key 的并集,并保存并集到 dstkey 下

Redis学习-set数据结构

 sdiff key1 key2 ...... keyN 返回所有给定 key 的差集

Redis学习-set数据结构

sdiffstore sdiffstore sdiffstore dstkey key1 ...... keyN 返回所有给定 key 的差集,并保存差集到 dstkey 下

Redis学习-set数据结构

 

smove srckey dstkey member 从 srckey对应 set 中移除 member并添加到 dstkey 对应 set 中, 整个操作是原子的

Redis学习-set数据结构

scard key 返回 set 的元素个数,如果 set 是空或者 key 不存在返回 0

Redis学习-set数据结构

sismember key member 判断 member 是否在 set 中,存在返回 1,0 表示不存在或者 key 不 存在

Redis学习-set数据结构

srem key member 从 key 对应 set 中移除指定元素

Redis学习-set数据结构

spop key 删除并返回 key 对应 set 中随机的一个元素

 Redis学习-set数据结构

srandmember key 同 spop,随机取 set 中的一个元素,但是不删除元素

Redis学习-set数据结构