redis我记不住的那些命令(五)
创始人
2024-03-14 14:45:14
0

背景:我记不住那么多命令,又是Linux命令,又是Git命令,又是kubernetes的命令,又是maven命令,又是redis命令。所谓好记性不如烂笔头,记下来吧。

一、set集合

集合的特点是 无序且各不相同的元素

1. sadd : 将一个或多个元素添加到集合里面,并返回不存在原集合中的元素数量

2. smembers : 返回集合包含的所有元素

3. sismember : 查看某个元素是否存在于集合中

4. scard : 返回集合中的元素的数量

5. srem : 从集合里面删除一个或多个元素,并返回被删除的元素的数量

6. srandmember : 随机返回集合中的一个元素或多个元素,当count为正数时,返回的随机元素不会重复,当count为负数时,命令返回的随机元素可能会出现重复。

如果 count 为正数,且小于集合基数,那么命令返回一个包含 count 个元素的数组,数组中的元素各不相同。

如果 count 大于等于集合基数,那么返回整个集合。如果 count 为负数,那么命令返回一个数组,数组中的元素可能会重复出现多次,而数组的长度为 count 的绝对值。

该操作和 SPOP 相似,但 SPOP 将随机元素从集合中移除并返回,而 Srandmember 则仅仅返回随机元素,而不对集合进行任何改动

7. spop : 随机的删除集合中的一个元素,并返回被删除的元素

8. smove :从一个集合中移动到另外一个集合中,成功则返回1,否则返回0

9. sdiff : 返回那些存在第一个集合、但不存在第二个集合中的元素,而不对集合进行任何改动

10. sdiffstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中。而不对集合进行任何改动

11. sinter : 返回两个集合的交集,而不对集合进行任何改动

12. sinterstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中,而不对集合进行任何改动

13. sunion : 返回两个集合的并集,而不对集合进行任何改动

14. sunionstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中,而不对集合进行任何改动

# 1. sadd : 将一个或多个元素添加到集合里面,并返回不存在原集合中的元素数量
127.0.0.1:6379> sadd myset1 csdn
1
127.0.0.1:6379> sadd myset1 stackoverflow github gitee juejin oschina google
6# 2. smembers : 返回集合包含的所有元素
127.0.0.1:6379> smembers myset1
gitee
github
csdn
stackoverflow
juejin
google
oschina# 3. sismember : 查看某个元素是否存在于集合中,返回1代表存在,返回0代表不存在
127.0.0.1:6379> sismember myset1 gitee
1
127.0.0.1:6379> sismember myset1 youtube
0# 4. scard : 返回集合中的元素的数量
127.0.0.1:6379> scard myset1
7# 5. srem : 从集合里面删除一个或多个元素,并返回被删除的元素的数量
127.0.0.1:6379> srem myset1 stackoverflow
1
127.0.0.1:6379> srem myset1 youtube
0# 6. srandmember : 随机返回集合中的一个元素或多个元素,当count为正数时,返回的随机元素不会重复,当count为负数时,命令返回的随机元素可能会出现重复
127.0.0.1:6379> srandmember myset1 3
juejin
gitee
github
127.0.0.1:6379> srandmember myset1 3
juejin
github
google
127.0.0.1:6379> srandmember myset1 3
github
oschina
google
127.0.0.1:6379> srandmember myset1 3
juejin
gitee
oschina
127.0.0.1:6379> scard myset1
6
127.0.0.1:6379> srandmember myset1 6
csdn
github
gitee
juejin
google
oschina
127.0.0.1:6379> srandmember myset1 7
csdn
github
gitee
juejin
google
oschina# 7. spop : 随机的删除集合中的一个元素或几个元素,并返回被删除的元素
格式: spop key_name count
127.0.0.1:6379> spop myset1 2
google
github
127.0.0.1:6379> smembers myset1
csdn
gitee
juejin
oschina# 8. smove :从一个集合中移动到另外一个集合中,成功则返回1,否则返回0
# 首先判断某个元素是否在集合中
127.0.0.1:6379> sismember myset1 csdn
1
# 从myset1移动某个元素到myset2
127.0.0.1:6379> smove myset1 myset2 csdn
1
# 查看myset1的所有元素
127.0.0.1:6379> smembers myset1
gitee
juejin
oschina
# 查看myset2的所有元素
127.0.0.1:6379> smembers myset2
csdn# 9. sdiff : 返回那些存在第一个集合、但不存在第二个集合中的元素,数学上的差集操作,
127.0.0.1:6379> smembers myset1
github
gitee
juejin
google
oschina
127.0.0.1:6379> smembers myset2
csdn
github
google
127.0.0.1:6379> sdiff myset1 myset2
juejin
gitee
oschina# 10. sdiffstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中。
# myresult是保存结果的集合
127.0.0.1:6379> sdiffstore myresult myset1 myset2
3
127.0.0.1:6379> smembers myresult
juejin
gitee
oschina
127.0.0.1:6379> smembers myset1
github
gitee
juejin
google
oschina
127.0.0.1:6379> smembers myset2
csdn
github
google# 11. sinter : 返回两个集合的交集
# 12. sinterstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中。
127.0.0.1:6379> sinter myset1 myset2
github
google
127.0.0.1:6379> sinterstore myresult myset1 myset2
2
127.0.0.1:6379> smembers myresult
github
google
127.0.0.1:6379> smembers myset1
github
gitee
juejin
google
oschina
127.0.0.1:6379> smembers myset2
csdn
github
google# 13. sunion : 返回两个集合的并集
# 14. sunionstore :  这个命令和上个命令相似,只是在于将结果进行存储到一个新的键中。
127.0.0.1:6379> sunion myset1 myset2
csdn
github
gitee
juejin
google
oschina
127.0.0.1:6379> sunionstore myresult myset1 myset2
6
127.0.0.1:6379> smembers myresult
csdn
github
gitee
juejin
google
oschina
127.0.0.1:6379> smembers myset1
github
gitee
juejin
google
oschina
127.0.0.1:6379> smembers myset2
csdn
github
google

 

  

相关内容

热门资讯

汽车油箱结构是什么(汽车油箱结... 本篇文章极速百科给大家谈谈汽车油箱结构是什么,以及汽车油箱结构原理图解对应的知识点,希望对各位有所帮...
美国2年期国债收益率上涨15个... 原标题:美国2年期国债收益率上涨15个基点 美国2年期国债收益率上涨15个基...
嵌入式 ADC使用手册完整版 ... 嵌入式 ADC使用手册完整版 (188977万字)💜&#...
重大消息战皇大厅开挂是真的吗... 您好:战皇大厅这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游戏...
盘点十款牵手跑胡子为什么一直... 您好:牵手跑胡子这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游...
senator香烟多少一盒(s... 今天给各位分享senator香烟多少一盒的知识,其中也会对sevebstars香烟进行解释,如果能碰...
终于懂了新荣耀斗牛真的有挂吗... 您好:新荣耀斗牛这款游戏可以开挂,确实是有挂的,需要了解加客服微信8435338】很多玩家在这款游戏...
盘点十款明星麻将到底有没有挂... 您好:明星麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【5848499】很多玩家在这款游戏...
总结文章“新道游棋牌有透视挂吗... 您好:新道游棋牌这款游戏可以开挂,确实是有挂的,需要了解加客服微信【7682267】很多玩家在这款游...
终于懂了手机麻将到底有没有挂... 您好:手机麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游戏...