redis-学习笔记(set)

Set 集合是有序的, 这里的有序是指元素具有唯一性( 不可重复), 因此 1,2,3 和 1,3,2 是一样的集合
其实现的几个底层逻辑: intset (整数集合), hashtable (哈希表)


powershell 复制代码
sadd key member [member ...]

往集合中添加元素


powershell 复制代码
smembers key

获取集合中的所有值


powershell 复制代码
sismember key member 

判断当前元素是否在集合中


powershell 复制代码
scard key 

查看集合的元素个数


powershell 复制代码
spop key [count]

随机删除 count 个 key (官方承诺, 随机删!!!)


powershell 复制代码
smove key1 key2 member

从 key1 中剪切元素, 粘贴到 key2 中

返回值为 0 , 移动失败(source 中不存在该值)

返回值为 1 , 移动成功


powershell 复制代码
sinter key [key ...]

求 几个集合 的交集, 返回值是 最终交集的数据


powershell 复制代码
sinterstore destination key [key ...]

求几个集合的交集, 并将结果放到 destination 这个集合中去, 返回值是交集的元素个数


powershell 复制代码
sunion key [key ...]

返回的是几个集合交集的结果数据


powershell 复制代码
sunionstore destination key [key ...]

同上


powershell 复制代码
sdiff key [key ...]

返回值是几个集差集的结果数据


powershell 复制代码
sdiffstore destination key [key ...]

同上


Set 的应用场景

  1. 使用 Set 来保存用户的 "标签" : 用户画像
  2. 使用 Set 来计算共同好友 : 基于集合求"交集"
  3. 使用 Set 统计 UV : 基于 "去重"
    PV : page view 用户每次访问服务器, 都会产生一个 PV
    UV : user view 每个用户访问服务器, 都会产生一个 UV, 但是一个用户多次访问服务器, 不会产生多个 UV
相关推荐
一隅论数智4 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi20164 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
爱吃苹果的日记本4 天前
离散数学第六课
学习·离散数学
AI职业加油站4 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
深圳老胡4 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊4 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
Because_of_Her14 天前
并查集-听课笔记
笔记·算法·并查集
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio