Redis数据类型:集合set

Redis数据类型:集合set


Redis中的集合是无序不可重复的,和列表一样,在插入和删除时,判断是否存在某元素效率是很高的。集合最大的优势在于可以进行交集、并集和差集操作。set可包含的最大元素数量是4294967295。
应用场景:
1.利用交集求共同好友。
2.利用唯一性,可以统计访问网站的所有独立IP。
3.根据求交集运算,进行好友推荐。

类型操作

1.给集合添加一个或多个元素。

SADD key member [member ...]

2.获取集合的所有元素。

SMEMBERS key

3.获取集合中的元素个数。

SCARD key

4.从集合中删除一个或多个元素。(如果元素不存在则忽略)

SREM key member [member ...]

5.判断是否存在member这个元素。(如果存在返回1,不存在返回0)

SISMEMBER key member

6.随机弹出(删除)元素。(count只能是正整数或者0,不能是负整数,为0时表示删除0个元素)

SPOP key [count]

应用场景:比如,公司年会抽奖环节(每次抽中一个员工就移除)。

7.随机获取(不删除)元素。(count可以是正整数、0或负整数,为0时表示获取0个元素)

SRANDMEMBER key [count]

说明:
(1)count大于0时,获取的元素一定不会重复。应用场景:大公司年会抽奖环节,奖品少人多而且保证每个人最多只会中奖一次的情况。
(2)count小于0时,获取的元素可能会重复。应用场景:小公司年会抽奖环节,奖品多人少,有的人会中奖多次的情况。

8.移动指定集合的一个元素到目标集合中。(如果目标集合中有这个元素则忽略)(目标集合中原有的元素不清空)

SMOVE source destination member

9.获取多个集合中的交集。

SINTER key [key ...]

10.获取多个集合中的交集,并把结果保存到目标集合中。(目标集合中原有的元素都清空)

SINTERSTORE destination key [key ...]

11.获取多个集合中的并集。

SUNION key [key ...]

12.获取多个集合中的并集,并把结果保存到目标集合中。(目标集合中原有的元素都清空)

SUNIONSTORE destination key [key ...]

13.获取多个集合中的差集。(可按需调整key的先后顺序)

SDIFF key [key ...]

14.获取多个集合中的差集,并把结果保存到目标集合中。(可按需调整key的先后顺序)(目标集合中原有的元素都清空)

SDIFFSTORE destination key [key ...]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值