redis --- Set类型使用

目录

一、Set类型使用

1.1、SADD key member [member.....] 

1.2、SMEMBERS key 

1.3、SISMEMBER key member 

1.4、SREM key member [member] 

1.5、scard 

1.6、srandmember key [数字] 

1.7、spop key [数字] 

1.8、smove  key1 key2 

1.9、集合运算 

1.9.1、集合的差集运算A-B

 1.9.2、集合的并集运算A∪B

 1.9.2、集合的交集运算A∩B


一、Set类型使用

1.1、SADD key member [member.....] 

添加元素

127.0.0.1:6379> sadd  set1 1 1 2 2 3 3 4
(integer) 4
 

1.2、SMEMBERS key 

遍历集合中的所有元素

127.0.0.1:6379> smembers  set1
1) "1"
2) "2"
3) "3"
4) "4"

1.3、SISMEMBER key member 

判断元素是否在集合中 

127.0.0.1:6379> sismember set1 1
(integer) 1
127.0.0.1:6379> sismember set1 5
(integer) 0
 

1.4、SREM key member [member] 

删除元素 

127.0.0.1:6379> srem set1 1
(integer) 1
127.0.0.1:6379> srem set1 5
(integer) 0
 

1.5、scard 

获取集合里面的元素个数 

127.0.0.1:6379> smembers  set1
1) "2"
2) "3"
3) "4"
127.0.0.1:6379> scard set1
(integer) 3
 

1.6、srandmember key [数字] 

从集合中随机展现设置的数字个数元素,元素不删除 

127.0.0.1:6379> srandmember set1 2
1) "1"
2) "5"
127.0.0.1:6379> smembers  set1
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
6) "6"
 

1.7、spop key [数字] 

从集合中随机弹出一个元素,出一个删一个

127.0.0.1:6379> spop set1 1
1) "2"
127.0.0.1:6379> spop set1 2
1) "1"
2) "4"
127.0.0.1:6379> smembers  set1
1) "3"
2) "5"
3) "6"
 

1.8、smove  key1 key2 

将key1里已存在的某个值赋给key2 

 127.0.0.1:6379> smembers  set1
1) "3"
2) "5"
3) "6"
127.0.0.1:6379> smembers  set2
1) "7"
2) "8"
3) "9"
127.0.0.1:6379> smove set1 set2 3
(integer) 1
127.0.0.1:6379> smembers  set2
1) "3"
2) "7"
3) "8"
4) "9"

1.9、集合运算 

1.9.1、集合的差集运算A-B

 sdiff key [key...]

127.0.0.1:6379> smembers set1
1) "c"
2) "1"
3) "b"
4) "a"
5) "2"
127.0.0.1:6379> smembers set2
1) "3"
2) "2"
3) "1"
4) "a"
5) "z"
127.0.0.1:6379> sdiff set1 set2
1) "c"
2) "b"
 

 1.9.2、集合的并集运算A∪B

sunion key [key...]

127.0.0.1:6379> sunion set1 set2
1) "z"
2) "c"
3) "3"
4) "b"
5) "a"
6) "1"
7) "2"
 

 1.9.2、集合的交集运算A∩B

 sinter key [key...]

127.0.0.1:6379> sinter set1 set2
1) "1"
2) "a"
3) "2"
 

sintercard numkeys  key [key...] [limit limit]

redis7新命令,它不返回结果集,而只返回结果的基数。返回由所有给定集合的交集产生的集合的基数。 

127.0.0.1:6379> sintercard 2 set1 set2
(integer) 3
127.0.0.1:6379> sintercard 2 set1 set2 limit 1
(integer) 1
127.0.0.1:6379> sintercard 2 set1 set2 limit 2
(integer) 2
127.0.0.1:6379> sintercard 2 set1 set2 limit 4
(integer) 3
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鸭鸭老板

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值