目录
一、Redis中Set介绍
Redis set 对外提供的功能与list类似,是一个列表的功能
特点:
二、常用命令
命令 | 描述 |
---|---|
sadd <key> <value1> <value2>.. | 添加一个或多个元素到集合中 |
smembers <key> | 取出该集合的所有值 |
simembers <key> <value> | 判断集合中是否含有该<value>值 |
scard <key> | 返回该集合的元素个数 |
srem <key><value1><value> | 删除集合中和某几个元素 |
spop <key> | 随机从该集合吐出一个元素 |
srandmember <key> <n> | 随机从该集合中取出n个值,不会从集合中删除 |
smove <source> <destination> <value> | 把集合中一个值从一个集合移动到另一个集合 |
三、示例
sadd <key> <value1> <value2>..
将一个或多个member元素加入到集合key中,已经存在的numnber将会被忽略
smembers <key>
取出该集合的所有值
simembers <key> <value>
判断集合中是否含有该<value>值,有返回1,没有返回0
scard <key>
返回该集合的元素个数
srem <key><value1><value> ..
删除集合中一个或几个元素
spop <key>
随机从该集合吐出一个元素,吐出后元素会消失
srandmember <key> <n>
随机从该集合中取出n个值,不会从集合中删除
smove <source> <destination> <value>
把集合中一个值从一个集合移动到另一个集合
这里主要用到了2个点,一个是这个smove的移动,还有就是因为移动的是v3到k2中,而k2中已经有了一个v3 而set是自动排重的,所以出现下面的结果
sinter <key1> <key2>
返回两个集合的交集元素
交集也就是两个集合共有的元素
sunion <key1> <key2>
返回两个集合并集元素
并集也就是2个集合的所有元素并去重的结果
sdiff <key1> <key2>
返回两个集合中的差集元素 (key1中的,不包含key2中的)
四、Set底层的数据结构
Set数据结构是dict字典,字典是用哈希表实现的。
好了,这次的文章就到这里,喜欢的同学可以点赞收藏,遇到问题,可以评论,或者留言,我一定会第一时间给到回馈,感谢观看!!
注:本文为本人学习时心得分享,有讲错或者需要改正的地方,请指正,我会虚心接受