redis数据类型之Set

一、简介

Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。

下面通过一张表格列出关于Set常用的操作命令:

Set常用操作命令总结

命令

使用说明

sadd

向集合中添加一个或者多个元素,如果元素已存在则忽略,只添加不存在的元素

smembers

获取集合中的所有元素

sismember

判断集合中是否包含某个元素

scard

获取集合里面的元素个数

srem

删除集合中元素

srandmember

随机出几个数

spop

随机出栈

smove

将元素从一个集合移动到另一个集合中

sdiff

返回两个set集合之间的差集

sinter

返回两个set集合之间的交集

sunion

返回两个set集合之间的并集

二、使用详解

【a】sadd/smembers/sismember

  • sadd:向集合中添加一个或者多个元素,如果元素已存在则忽略,即只添加不存在的元素;
  • smembers:获取集合中的所有元素;
  • sismember:判断集合中是否包含某个元素;

【b】scard

  • scard:获取集合里面的元素个数;

【c】srem

  • srem:删除集合中元素,注意如果移除的元素不存在,返回0,删除成功返回1

【d】srandmember

  • srandmember:随机出几个数,指定随机返回的元素的个数,如果count大于集合中的个数,则返回所有的元素。负数的话取绝对值;

【e】spop

  • spop: 随机出栈(spop会将获取的元素移除而srandmember不会移除元素);

【f】smove 

  • smove:将元素从一个集合移动到另一个集合中;

【g】差集:sdiff / 交集:sinter / 并集:sunion

  • sdiff:返回两个set集合之间的差集;
  • sinter:返回两个set集合之间的交集; 
  • sunion:返回两个set集合之间的并集;

三、总结

以上就是关于Set无序列表相关命令的学习总结,如有不对之处还望指正,相互学习,共同进步。

发布了197 篇原创文章 · 获赞 86 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/Weixiaohuai/article/details/103448227
今日推荐