Redis——集合类型相关命令

集合中的元素是无序的,集合中的元素是不能重复的,我们把集合中的元素叫做memeber。

在集合添加元素

复制代码
SADD key member1 member2 ...

向 Set 集合中添加一个或多个元素
集合不存在则自动创建
重复元素会自动去重,只保留一份
返回值:成功添加的新元素个数

查看集合所有元素

复制代码
SMEMBERS key

返回集合中所有的元素
集合无序,输出顺序不固定
key 不存在返回空集合

集合中的元素个数

sql 复制代码
scard key1

判断集合中的某元素是否存在

复制代码
SISMEMBER key member

存在返回1,不存在返回0

随机删除集合中的一个元素

复制代码
SPOP key [count] //随机删除集合中的某个或者某几个元素,count表示删除数量,不写就是删除一个。返回被删除的元素

删除指定的元素

sql 复制代码
srem key value1 value2... ...//删除集合中指定的某几个元素

随机从集合获取一个元素

sql 复制代码
SRANDMEMBER key [count] //随机筛选出count个元素(不写的话就是随机筛选一个),返回被选中的元素

把集合元素移动到另一个集合

sql 复制代码
SMOVE key1 key2 value //把集合1中的value移动到集合2,其中集合1的value会被删除

如果集合2已经有value,那么不会重复添加,但是集合1中的value会被删除

如果集合1没有value就报错

交集、并集、差集

sql 复制代码
sinter key1 key2... ... //求若干个集合的交集

sinterstore deskey key1 key2 ... ...//求出若干集合的交集后把交集插入到deskey所指向的集合

sunion key1 key2... ... //求若干个集合的并集

sunionstore deskey key1 key2 ... ...//求出若干集合的并集后把并集插入到deskey所指向的集合

sdiff key1 key2... ... //求若干个集合的差集

sdiffstore deskey key1 key2 ... ...//求出若干集合的差集后把差集插入到deskey所指向的集合

集合应用场景

  • **用户标签,比如使用推荐算法给用户制造信息茧房就需要收集每个用户的一些特征,也就是标签。**用户标签和视频标签求交集就能给用户推荐视频。
  • 使用set统计UV(user view)。利用set给用户去重,这样set中的用户就是实际用户数
相关推荐
醉颜凉15 小时前
Redis网络层解析:高性能服务器架构设计与实现
redis·epoll·网络架构·i/o多路复用·事件驱动
醉颜凉15 小时前
Redis 与 Pika 对比:大容量冷热数据落盘方案与混合存储架构
redis·pika·混合存储·存储架构·冷热数据分离
刃神太酷啦18 小时前
Redis 进阶核心:持久化 (RDB/AOF)、事务与主从复制全解析----《Hello Redis!》(5)
linux·c语言·数据库·c++·redis·缓存·bootstrap
三84418 小时前
SSRF 打内网 Redis:gopher 原理与实操
redis·web安全·bootstrap·ssrf
youm200319 小时前
认识Redis
redis·笔记·学习
互联网叫兽1 天前
redis深入学习二
数据库·redis·学习
hweiyu001 天前
Redis命令:TTL
redis·缓存
深蓝电商API1 天前
Redis 在分布式爬虫中的作用
redis·分布式·爬虫
编码者卢布1 天前
【Azure Function】NodeJS Function大批量写入到Redis遇见丢失数据情况的分析
redis·microsoft·azure
MC丶科1 天前
软考架构师90天冲刺|DAY44·Redis高级应用
数据库·数据仓库·redis·缓存·oracle·容器·规格说明书