Redis存取Set类型

set集合的特点是,元素无序不可重复


常用命令:

(1)添加元素:sadd key value [key…]
在这里插入图片描述
返回值:添加元素成功的个数。
当集合中存在的值,不会添加,但会继续添加不重复的值。
在这里插入图片描述


(2)查看set中的所有元素:smembers key
在这里插入图片描述


(3)查看set中是否存在某个元素:sIsMember key value
在这里插入图片描述
返回值:1表示存在,0表示不存在。


(4)查看set集合中元素的个数:scard key
在这里插入图片描述
返回值:当key不存在时,返回0。key不是set集合时,返回error。


(5)移除set中指定元素:srem key value
在这里插入图片描述
可以一次性移除多个值,即value可以多个。当其中的value是不存在的,即忽略改值。
返回值:移除元素的个数,不包括忽略的元素。


(6)随机查询set中的元素:sRandMember key [count]

这个命令不会改变原set集合的结构,只是随机查询返回。
在这里插入图片描述
count必须为整数,不然返回error。

当count不写时,默认随机返回1个元素。
当count=0时,返回空。
当0<count<=实际元素个数,随机返回count个元素。
当count>实际元素个数,返回所有元素,此时结果不是随机的排列,而是set中实际存储的结构顺序。
当count<0,随机返回|count|个元素,此时元素可重复,|count|可以很大。
必须合理规定传入的count值。
在这里插入图片描述


(7)随机的删除set中的元素:spop key [count]

该命令是真正移除元素,会改变set结构
count不写默认1。count的范围是0 - 实际元素个数,不然返回error。
在这里插入图片描述


(8)将指定元素移动到另外的set中:smove source dest member
在这里插入图片描述


(9)set集合的交集,并集,差集:

交集:sinter key [key…]
并集:sunion key [key…]
差集:sdiff key [key…]
在这里插入图片描述


Set命令小结:
增:

  • Sadd key value (value…)

删:

  • Srem key value (value…)
  • Spop key [count]

查:

  • Smembers key
  • sIsMember key value
  • Scard key
  • sRandMember key [count]

改:无

其他:

  • Smove source dest member
  • Sinter key1 key2…
  • Sunion key1 key2…
  • Sdiff key1 key2…

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐