专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Redis之set类型

数据类型set

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

集合中最大的成员数为 232 – 1 (4294967295, 每个集合可存储40多亿个成员)。

sadd:向集合中添加一个或多个成员

向集合demo中添加一个成员,添加成功返回1,失败返回0

sadd demo name1

向集合demo中添加多个成员,成功就返回成功的数量,失败返回0

sadd demo name2 name3

注意:如果集合中已经存在该成员的话,在执行添加成员时返回0。

smembers :查询集合中的所有成员

查询demo集合中的所有成员

smembers demo

scard :查询集合中的成员个数

查询demo集合中的成员个数

scard demo

sismember :判断某个成员是否是该集合中的成员

判断name11是否是demo集合中的成员,是则返回1,否则返回0

sismember demo name11

spop:删除并返回集合中删除的一个随机成员

删除demo集合中一个随机成员,并返回删除的成员

spop demo

srem:指定删除集合中一个或多个成员,返回删除成功的个数

删除demo集合中的一个成员name1

srem demo name1

删除demo集合中的多个成员name2,name3

srem demo name2 name3

srandmember:查询集合中一个或多个随机成员

查询集合demo中不超过demo里的所有成员的个数时,只返回所要查询的随机成员个数

srandmember demo 1

当查询超过demo集合中的所有成员个数时,就会返回集合demo的所有成员

如:demo集合中成员个数只有6位,而我们要查询的是10位,这种情况只会返回6位

srandmember demo 10

集合与集合之前的使用

sdiff:查询集合的差集(查询前者集合不存在于后者集合的所有成员)

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

第一种情况

sdiff demo1 demo2 # 返回name2,name3

第二种情况

sdiff demo2 demo1 # 返回name5,name6

sdiffstore:把两个集合的差集添加到一个新的集合中

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

sdiffstore new_demo demo1 demo2

查询new_demo集合中的成员

smembers new_demo # 返回name2,name3

sinter:查询两个集合的交集(也就是两个集合中大家都有的成员就查询出来)

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

sinter demo1 demo2 # 返回name1

smove:将某个集合中的成员移动到另一个集合中去。

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

把demo2集合中的成员name6移动到demo1集合中

smove demo2 demo1 name6

sunion :查询给定集合的并集

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

sunin demo1 demo2 # 返回name1,name2,name3,name5,name6

sunionstore : 把给定集合的并集存储到新的集合中,返回成功的个数。

如:集合demo1中有成员:name1,name2,name3,集合demo2中有成员:name1,name5,name6

sunionstore new_demo demo1 demo2 # 返回 5

文章永久链接:https://tech.souyunku.com/46918

未经允许不得转载:搜云库技术团队 » Redis之set类型

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们