redis的set数据类型的基本操作
1、首先连上你的redis
以下一些命令很简单,或者执行命令后效果也无法体现的就没有进行截图展示
2、set相关操作
说明:redis的set是String类型的无序集合,它底层其实是一个value为null的hash表,所以添加、删除、查找的复杂度都是O(1)。
-------------------添加、获取操作开始------------------
向集合中添加一个或多个成员:sadd key member [member ...]
实践:sadd key1 val1 val2 val3
返回集合中的所有成员:smembers key
实践:smembers key1
返回集合中的元素个数:scard key
实践:scard key1
删除集合中的一个或多个元素:srem key member [member ...]
实践:srem key1 val1 val2
提示:当srem删除key中不存在的value时,返回的是0
判断元素是否属于集合:sismember key member
实践:sismember key1 val1,说明:判断key1中是否存在成员val1,返回0表示不存在,返回1表示存在
随机从集合中移除一个或多个元素并返回:spop key [count]
[count]表示要移除并吐出的元素个数,如果不设置,默认为1
实践:spop key2,说明:从key2中默认吐出一个元素并返回。
返回集合中一个或多个随机数,但这些元素不会从集合中删除:srandmember key [count]
[count]表示要吐出的元素个数,如果不设置,默认为1
实践:srandmember key2 2,说明:从key2中吐出两个元素并返回。
把集合中的一个值从一个集合移动到另一个集合:smove source destination member
实践:smove key2 key1 val8,说明:从key2将val8移动到key1中。
-------------------添加、获取操作结束------------------
-------------------差集、交集、并集开始------------------
返回给定所有集合的差集:sdiff key [key ...]
实践:sdiff key1 key2,说明:返回以key1集合开始,key1中元素与key2元素中所有集合的差集。当存在多个集合是,key1中元素继续往后续key中找差集。
所有给定集合的差集存储在destination集合中:sdiffstore destination key [key ...]
实践:sdiffstore key4 key1 key2,说明:key1 key2集合的差集存储在集合key4中
返回给定所有集合的交集:sinter key [key ...]
实践:sinter key2 key3,说明:返回key2与key3中的交集
所有给定集合的交集存储在destination集合中:sinterstore destination key [key ...]
实践:sinterstore key5 key2 key3,说明:key2 key3集合的交集存储在集合key5中
返回给定所有集合的并集:sunion key [key ...]
实践:sunion key2 key3,说明:返回key2与key3中的并集,重复元素自动去重
所有给定集合的并集存储在destination集合中:sunionstore destination key [key ...]
实践:sunionstore key6 key2 key3,说明:key2 key3集合的并集存储在集合key6中
-------------------差集、交集、并集开始------------------