现在的位置: 首页 -> PHP学习 -> Redis教程 -> redis无序集合set类型详解_常用命令

redis无序集合set类型详解_常用命令

2015-09-19 00:00评论数 0 ⁄ 被浏览 10696 views+

redis中的set是string类型的无序集合,set元素最大可以包含2的32次方-1个元素。利用set集合类型,我们可以快速取出n个key之间的并集、交集、差集等,从而轻松解决mysql等数据库不容易实现这种运算的缺陷。


与上篇中list类型不同的是,set集合中不允许出现重复的元素,因此set类型也可以快速判断某一元素是否存在。


应用场景:取出两个QQ号中的共同的好友数;判断某个ip是否在白名单内等。


以下是无序集合类型(set)的一些常用操作命令:


1.【 sadd key vaule 】 往集合中插入一个元素,如果value值已存在集合中,则返回0,不会被重复插入。

2.【 sinter key1 key2 ... keyN 】 取出n个key之间的交集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sinter key1 key2返回d,e。

3.【 sunion key1 key2 ... keyN 】 取出n个key之间的并集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sunion key1 key2返回a,b,c,d,e,f。

4.【 sdiff  key1 key2 】 取出n个key之间的差集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sdiff key1 key2返回a,b,c;反过来sdiff key2 key1返回f。

5.【 smembers key 】 返回key集合中所有的元素,结果是无序的。

6.【 sismember key value 】 查看value这个值是否在key集合中。存在返回1,不存在返回0。

7.【 scard key 】 返回集合中有多少个元素。

8.【 smove key1 key2 value 】 把value从key1中移到key2中去。

9.【 srem key value1 value2 ... valueN 】 从key集合中删掉某些元素。


由上可见,合理的运用set类型,效率可以实现几何倍增!

 

文章出自:https://www.daixiaorui.com/read/195.html 本站所有文章,除注明出处外皆为原创,转载请注明本文地址,版权所有。

目前有 0 条评论  @我要评论

    您的每一个评论都是对我的一份支持

     博客二维码

    昵称 *

    邮箱 *