设为首页 收藏本站
查看: 759|回复: 0

[经验分享] Redis基本数据类型介绍及相关方法介绍笔记--Set类型

[复制链接]

尚未签到

发表于 2016-12-21 09:13:59 | 显示全部楼层 |阅读模式
Redis五种数据类型之 SETS类型

SETS集合 是string类型的无序集合,通过hashtable实现,CRD操作复杂度为0(1),可取并交差集。 
  下面切入正题咯:
 常用命令总结(自用总结 不喜勿喷):
 
1.sadd方法
向名称为key的set中添加元素,添加相同元素时不成功喔,集合中不允许有重复的值
eg:
127.0.0.1:6379> sadd testset "harbor"
(integer) 1
127.0.0.1:6379> sadd testset "harborChung"
(integer) 1
127.0.0.1:6379> sadd testset "harborchung"
(integer) 1
127.0.0.1:6379> sadd testset "Chung"
(integer) 1
127.0.0.1:6379> sadd testset "chung"
(integer) 1
 
2.semembers方法
查看指定集合的元素
eg:
127.0.0.1:6379> sadd testset "chung"
(integer) 0
 
3.srem方法
删除名称为key的set中的元素
 eg:
127.0.0.1:6379> smembers testset
1) "harborchung"
2) "harbor"
3) "harborChung"
4) "chung"
5) "Chung"
127.0.0.1:6379> srem testset "harbor"
(integer) 1
127.0.0.1:6379> smembers testset
1) "harborChung"
2) "chung"
3) "Chung"
4) “harborchung”
 
4.spop 方法
随机返回并删除名称为key的set中的一个元素,返回值为删除的元素值
eg:
127.0.0.1:6379> spop testset 
"chung"
127.0.0.1:6379> spop testset 
"Chung"
127.0.0.1:6379> smembers testset
1) "harborChung"
2) "harborchung"
 
5.sdiff方法
返回所有给定key与第一个key的差集
以在前面的集合名称为标准 取差集
eg:
127.0.0.1:6379> sadd set1 "harbor"
(integer) 1
127.0.0.1:6379> sadd set1 "harborChung"
(integer) 1
127.0.0.1:6379> sadd set2 "harborChung"
(integer) 1
127.0.0.1:6379> sadd set2 "Chung"
(integer) 1
127.0.0.1:6379> sdiff set1 set2
1) "harbor"
127.0.0.1:6379> sdiff set2 set2
(empty list or set)
127.0.0.1:6379> sdiff set2 set1
1) “Chung"
 
6.sdiffstore方法
返回所有给定key与第一个key的差集,并将其赋予给另一个key中
eg:
127.0.0.1:6379> sdiffstore set2 set1 set3
(integer) 1
127.0.0.1:6379> smembers set3
1)“harborchung"
 
7.sinter方法
返回所有给定key的交集
eg:
127.0.0.1:6379> sinter set1 set2
1) "harborChung"
2) "harbor"
 
8.sinterstore方法
返回所有给定key的交集并将结果存到另一个集合当中
eg:
127.0.0.1:6379> sinterstore set1 set2 set4
1) "harborChung"
2) “harbor”
127.0.0.1:6379> smembers set4
1) "harborChung"
2) “harbor”
 
9.sunion方法
返回所有给定key的并集
eg:
127.0.0.1:6379> smembers set1
1) "harbor"
2) "chong"
3) "zhong"
127.0.0.1:6379> smembers set2
1) "harbor"
2) "harborChung"
127.0.0.1:6379> sunion set1 set2
1) "harborChung"
2) "chong"
3) "harbor"
4) "zhong"
 
10.sunionstore方法
返回所有给定key的并集并将结果存到另一个集合当中
eg:
127.0.0.1:6379> sunionstore set1 set2 set3
(integer) 4
127.0.0.1:6379> smembers set13
1) "harborChung"
2) "chong"
3) "harbor"
4) “zhong"
 
11.smove方法
从第一个key对应的set中移除member并添加到第二个集合中
eg:
127.0.0.1:6379> sadd setO1 "one"
(integer) 1
127.0.0.1:6379> sadd setO1 "two"
(integer) 1
127.0.0.1:6379> sadd setO2 "two"
(integer) 1
127.0.0.1:6379> sadd setO2 "three"
(integer) 1
127.0.0.1:6379> smove setO2 set03 "three"
(integer) 1
127.0.0.1:6379> smembers set03
1) “three"
 
12.scard方法
查看集合元素个数
eg:
127.0.0.1:6379> smembers set03
1) "three"
127.0.0.1:6379> scard set03
(integer) 1
127.0.0.1:6379> scard setO2
(integer) 1
127.0.0.1:6379> scard setO1
(integer) 2
127.0.0.1:6379> smembers setO2
1) "two"
127.0.0.1:6379> smembers setO1
1) "one"
2) "two"
 
13.sismember方法
判断某个元素是否是该集合的元素,返回值1代表是0代表不是
eg:
127.0.0.1:6379> sismember setO1 one
(integer) 1
127.0.0.1:6379> sismember setO1 hoho
(integer) 0
 
14.srandmember方法
随机返回名称为key的set的一个元素,不删除元素
eg:
127.0.0.1:6379> srandmember setO1
"two"
127.0.0.1:6379> srandmember setO1
"one"
127.0.0.1:6379> srandmember setO1
"two"
127.0.0.1:6379> srandmember setO1
"one"
127.0.0.1:6379> srandmember setO1
"one"
 
15.SPOP方法
随机返回名称为key的set的一个元素并删除元素
127.0.0.1:6379> SPOP setO1
"two"
127.0.0.1:6379> smembers setO1
“one"
 
 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-317170-1-1.html 上篇帖子: Redis基本数据类型介绍及相关方法介绍笔记--List类型 下篇帖子: Redis基本数据类型介绍及相关方法介绍笔记--Zset(Sorted set)类型
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表