php redis set 类型,小蚂蚁学习Redis笔记(6)——Redis数据类型之无序集合set类型...

无序集合set类型

set集合,它是string类型的无序集合。set是通过hash table实现的,添加删除和查找的复杂度都是0(1)。对集合我们可以取并集,交集,差集。通过这些操作我们可以实现sns中的好友推荐blog和tag功能。

set常用命令

1.    sadd    向集合中添加元素

格式:    sadd    myset1    “allen”

含义:    向无序集合myset1中添加元素allen,成功返回1。

2.    smembers    查看集合中的所有元素

格式:    smembers    myset1

含义:    查看集合myset1中的所有元素

3.    srem    删除名称为key的set中的元素

格式:      srem    myset1    “allen”

含义:    从集合myset1中删除一个名为allen的元素

注意:    删除成功返回1,删除失败返回0。

4.    spop    随机弹出并且删除一个元素

格式:    spop    myset1

含义:    随机从myset1中随机弹出一个元素,并且删除掉。

注意:    因为set是无序列表,所以只能随机弹出元素。

5.    sdiff    返回两个集合的差集

格式:    sdiff    myset1    myset2

含义:    比较两个集合的差集,并且返回myset1中的差集。

注意:    哪个集合在前,返回哪个集合的差集。比较上例中,返回的是myset1。

6.    sdiffstore    返回两个集合的差集,并且把返回的差集放入第三个集合中

格式:    sdiffstore    myset3    myset1    myset2

含义:    比较集合myset1和myset2的差集,并且放入第三个集合myset3中。

7.    sinter    返回给定集合的交集。

格式:    sinter    myset1    myset2

含义:    比较集合myset1和myset2的交集,并且返回。

8.    sinterstore    返回给定集合的交集,并且把返回的交集放入第三个集合中

格式:    sinterstore    myset4    myset1    myset2

含义:    比较集合myset1和myset2的交集,并且放入第三个集合myset4中。

9.    sunion    返回给定集合的并集。

格式:    sunion    myset1    myset2

含义:    比较集合myset1和myset2的并集,并且返回。

10.    sunionstore    返回给定集合的并集,并且把返回的交集放入第三个集合中

格式:    sunionstore    myset5    myset1    myset2

含义:    比较集合myset1和myset2的并集,并且放入第三个集合myset5中。

11.    smove    从一个集合中拿出一个元素,并且放入到另一个集合中去。

格式:    smove    myset1    myset2    “allen1”

含义:    从集合myset1中拿出allen1,放置到集合myset2中去。成功返回1,失败返回0。

例子:

127.0.0.1:6379> smembers myset1

1) "allen1"

2) "1"

3) "2"

4) "3"

127.0.0.1:6379> smembers myset2

1) "3"

2) "5"

127.0.0.1:6379> smove myset1 myset2 "allen1"

(integer) 1

127.0.0.1:6379> smembers myset2

1) "allen1"

2) "5"

3) "3"

127.0.0.1:6379>

127.0.0.1:6379> smembers myset1

1) "1"

2) "2"

3) "3"

12.    scard    返回集合中元素的个数

格式:    scard    myset1

含义:    返回集合myset1中,元素的个数。

13.    sismember    判断元素是否属于这个集合

格式:    sismember    myset2    "allen1"

含义:    判断元素allen1,是否属于集合myset2。是,返回1,不是,返回0。

14.    srandmember    随机返回一个元素,但不删除。

格式:    srandmember    myset2

含义:    随机返回集合myset2中的一个元素,但是不删除。和spop形成对比,spop是弹出,也就是会删除的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值