redis set数据类型的使用 作者:马育民 • 2020-12-24 09:55 • 阅读:10149 # 介绍 类似list,是string类型的 **无序集合**,**其元素不重复**,集合是通过哈希表实现的 集合中最大的成员数为 $$2^{32} - 1$$ ( 每个集合可存储40多亿个成员) ### 应用场景 在社交app中,将某用户的粉丝存在一个集合。 点【关注】时,直接向该集合添加记录即可,不需要判断是否已经关注(如果使用list类型,需要判断该粉丝是否存在) 还提供 **交集**、**并集**、**差集**等操作,可以非常方便的实现如 **共同关注**、**共同喜好**、**二度好友** 等功能 # 命令 http://redisdoc.com/set/index.html https://www.runoob.com/redis/redis-sets.html SADD SISMEMBER SPOP SRANDMEMBER SREM SMOVE SCARD SMEMBERS SSCAN SINTER SINTERSTORE SUNION SUNIONSTORE SDIFF SDIFFSTORE # 例子:粉丝 ### 给lilei添加粉丝 ``` > sadd fans_lilei hanmeimei lucy lili (integer) 3 ``` ### 查看lilei的粉丝 ``` > smembers fans_lilei 1) "lucy" 2) "lili" 3) "hanmeimei" ``` ### 给lucy添加粉丝 ``` > sadd fans_lucy lilei hanmeimei lili (integer) 3 ``` ### 查看lucy的粉丝 ``` > smembers fans_lucy 1) "lilei" 2) "lili" 3) "hanmeimei" ``` ### 返回共同粉丝 返回给定所有集合的交集 ``` >SINTER fans_lucy fans_lilei 1) "lili" 2) "hanmeimei" ``` 原文出处:http://www.malaoshi.top/show_1IXHNhWU02C.html