Redis中集合(Set)常见命令详解

news2025/2/23 2:16:21

集合(Set)常见命令详解

集合(Set)在Redis中是一种无序且不可重复的数据结构,非常适合用于存储唯一元素的集合。以下是Redis集合操作的一些常用命令及其详细说明:

添加成员

  • sadd key member [member ...]
    • 功能:向指定集合中添加一个或多个成员。
    • 参数
      • key:集合的键。
      • member:要添加到集合中的成员,可以是一个或多个。
    • 返回值:成功添加的新成员数量。如果成员已经存在于集合中,则不会重复添加。

获取所有成员

  • smembers key
    • 功能:返回集合中的所有成员。
    • 参数
      • key:集合的键。
    • 返回值:集合中的所有成员组成的列表。

删除成员

  • srem key member [member ...]
    • 功能:从集合中移除一个或多个成员。
    • 参数
      • key:集合的键。
      • member:要从集合中移除的成员,可以是一个或多个。
    • 返回值:成功移除的成员数量。

获取成员数量

  • scard key
    • 功能:获取集合中的成员数量。
    • 参数
      • key:集合的键。
    • 返回值:集合中的成员数量。

随机移除成员

  • spop key [count]
    • 功能:随机移除集合中的一个或多个成员,并返回被移除的成员。
    • 参数
      • key:集合的键。
      • count(可选):要移除的成员数量。如果不指定,则默认移除一个成员。
    • 返回值:被移除的成员组成的列表。

判断成员是否存在

  • sismember key member
    • 功能:判断某个成员是否存在于集合中。
    • 参数
      • key:集合的键。
      • member:要判断的成员。
    • 返回值:如果成员存在于集合中,返回1;否则返回0。

合并集合

  • sunion key1 key2 [key ...]

    • 功能:返回给定所有集合的并集。
    • 参数
      • key1key2等:要合并的集合的键。
    • 返回值:所有集合的并集组成的列表。
  • sunionstore dest key1 key2 [key ...]

    • 功能:将给定所有集合的并集存储到目标集合中。
    • 参数
      • dest:目标集合的键。
      • key1key2等:要合并的集合的键。
    • 返回值:并集中成员的数量。

获取交集

  • sinter key1 key2 [key ...]

    • 功能:返回给定所有集合的交集。
    • 参数
      • key1key2等:要求交集的集合的键。
    • 返回值:所有集合的交集组成的列表。
  • sinterstore dest key1 key2 [key ...]

    • 功能:将给定所有集合的交集存储到目标集合中。
    • 参数
      • dest:目标集合的键。
      • key1key2等:要求交集的集合的键。
    • 返回值:交集中成员的数量。

获取差集

  • sdiff key1 key2 [key ...]

    • 功能:返回第一个集合与其他集合的差集(即存在于第一个集合但不存在于其他集合中的成员)。
    • 参数
      • key1:基准集合的键。
      • key2等:要从基准集合中移除的成员所在的集合的键。
    • 返回值:差集组成的列表。
  • sdiffstore dest key1 key2 [key ...]

    • 功能:将第一个集合与其他集合的差集存储到目标集合中。
    • 参数
      • dest:目标集合的键。
      • key1:基准集合的键。
      • key2等:要从基准集合中移除的成员所在的集合的键。
    • 返回值:差集中成员的数量。

这些命令为操作Redis集合提供了强大的功能,适用于各种需要唯一性约束和集合运算的场景。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2303708.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mac系统下使用Docker快速部署MaxKB:打造本地知识库问答系统

随着大语言模型的广泛应用,知识库问答系统逐渐成为提升工作效率和个人学习的有力工具。MaxKB是一款基于LLM(Large Language Model)大语言模型的知识库问答系统,支持多模型对接、文档上传和自动爬取等功能。本文将详细介绍如何在Ma…

如何为自己的 PDF 文件添加密码?在线加密 PDF 文件其实更简单

随着信息泄露和数据安全问题的日益突出,保护敏感信息变得尤为重要。加密 PDF 文件是一种有效的手段,可以确保只有授权用户才能访问或修改文档内容。本文将详细介绍如何使用 CleverPDF 在线工具为你的 PDF 文件添加密码保护,确保其安全性。 为…

华为昇腾910b服务器部署DeepSeek翻车现场

最近到祸一台HUAWEI Kunpeng 920 5250,先看看配置。之前是部署的讯飞大模型,发现资源利用率太低了。把5台减少到3台,就出了他 硬件配置信息 基本硬件信息 按照惯例先来看看配置。一共3块盘,500G的系统盘, 2块3T固态…

hive—常用的函数整理

1、size(split(...))函数用于计算分割后字符串数组的长度 实例1):由客户编号列表计算客户编号个数 --数据准备 with tmp_test01 as ( select tag074445270 tag_id,202501busi_mon , 012399931003,012399931000 index_val union all select tag07444527…

Unity Mirror 多房间匹配

文章目录 一 、一些唠叨二 、案例位置三、多房间匹配代码解析四、关于MatchInterestManagement五、总结 一 、一些唠叨 最近使用Mirror开发了一款多人同时在线的肉鸽塔防游戏,其目的是巩固一下Mirror这个插件的熟练度,另一方面是想和身边的朋友一起玩一下自己开发的游戏. 但是…

基于flask+vue框架的的医院预约挂号系统i1616(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表 项目功能:用户,医生,科室信息,就诊信息,医院概况,挂号信息,诊断信息,取消挂号 开题报告内容 基于FlaskVue框架的医院预约挂号系统开题报告 一、研究背景与意义 随着医疗技术的不断进步和人们健康意识的日益增强,医院就诊量逐年增加。传统的现场…

Rust编程语言入门教程(五)猜数游戏:生成、比较神秘数字并进行多次猜测

Rust 系列 🎀Rust编程语言入门教程(一)安装Rust🚪 🎀Rust编程语言入门教程(二)hello_world🚪 🎀Rust编程语言入门教程(三) Hello Cargo&#x1f…

【代码审计】-Tenda AC 18 v15.03.05.05 /goform接口文档漏洞挖掘

路由器:Tenda AC 18 v15.03.05.05 固件下载地址:https://www.tenda.com.cn/material?keywordac18 1./goform/SetSpeedWan 接口文档: formSetSpeedWan函数中speed_di参数缓冲区溢出漏洞: 使用 binwalk -eM 解包固件&#xff0c…

2025年02月21日Github流行趋势

项目名称:source-sdk-2013 项目地址url:https://github.com/ValveSoftware/source-sdk-2013项目语言:C历史star数:7343今日star数:929项目维护者:JoeLudwig, jorgenpt, narendraumate, sortie, alanedwarde…

git 克隆及拉取github项目到本地微信开发者工具,微信开发者工具通过git commit、git push上传代码到github仓库

git 克隆及拉取github项目到本地微信开发者工具,微信开发者工具通过git commit、git push上传代码到github仓库 git 克隆及拉取github项目到本地 先在自己的用户文件夹新建一个项目文件夹,取名为项目名 例如这样 C:\Users\HP\yzj-再打开一个终端页面&…

【算法基础】--前缀和

前缀和 一、一维前缀和示例模板[寻找数组的中心下标 ](https://leetcode.cn/problems/tvdfij/description/)除自身以外的数组乘积和可被k整除的子数组 一、一维前缀和 前缀和就是快速求出数组某一个连续区间内所有元素的和。 示例模板 已知一个数组arr,求前缀和 …

统一的多摄像头3D感知框架!PETRv2论文精读

论文地址:PETRv2: A Unified Framework for 3D Perception from Multi-Camera Images 源代码:PETR 摘要 在本文中,我们提出了PETRv2,用于从多视角图像中进行3D感知的统一框架。基于PETR [24],PETRv2探索了时间建模的…

【Linux】Linux 文件系统—— 探讨软链接(symbolic link)

ℹ️大家好,我是练小杰,周五又到了,明天应该就是牛马的休息日了吧!!😆 前天我们详细介绍了 硬链接的特点,现在继续探讨 软链接的特点,并且后续将添加更多相关知识噢,谢谢…

Linux-CentOS 7安装

Centos 7镜像:https://pan.baidu.com/s/1fkQHYT64RMFRGLZy1xnSWw 提取码: q2w2 VMware Workstation:https://pan.baidu.com/s/1JnRcDBIIOWGf6FnGY_0LgA 提取码: w2e2 1、打开vmware workstation 2、选择主界面的"创建新的虚拟机"或者点击左上…

AI助力下的PPT革命:DeepSeek 与Kimi的高效创作实践

清华大学出品《DeepSeek:从入门到精通》分享 在忙碌的职场中,制作一份高质量的PPT往往需要投入大量时间和精力,尤其是在临近截止日期时。今天,我们将探索如何借助 AI 工具 —— DeepSeek 和 Kimi —— 让 PPT 制作变得既快捷又高…

【opencv】图像基本操作

一.计算机眼中的图像 1.1 图像读取 cv2.IMREAD_COLOR:彩色图像 cv2.IMREAD_GRAYSCCALE:灰色图像 ①导包 import cv2 # opencv读取的格式是BGR import matplotlib.pyplot as plt import numpy as np %matplotlib inline ②读取图像 img cv2.imread(…

帆软报表FineReport入门:简单报表制作[扩展|左父格|上父格]

FineReport帮助文档 - 全面的报表使用教程和学习资料 数据库连接 点击号>>JDBC 选择要连接的数据库>>填写信息>>点击测试连接 数据库SQLite是帆软的内置数据库, 里面有练习数据 选择此数据库后,点击测试连接即可 数据库查询 方法一: 在左下角的模板数据集…

云手机如何进行经纬度修改

云手机如何进行经纬度修改 云手机修改经纬度的方法因不同服务商和操作方式有所差异,以下是综合多个来源的常用方法及注意事项: 通过ADB命令注入GPS数据(适用于技术用户) 1.连接云手机 使用ADB工具连接云手机服务器,…

天 锐 蓝盾终端安全管理系统:办公U盘拷贝使用管控限制

天 锐 蓝盾终端安全管理系统以终端安全为基石,深度融合安全、管理与维护三大要素,通过对桌面终端系统的精准把控,助力企业用户构筑起更为安全、稳固且可靠的网络运行环境。它实现了管理的标准化,有效破解终端安全管理难题&#xf…

计算机网络之物理层——基于《计算机网络》谢希仁第八版

(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,数据结构,Linux基础,ARM开发板,网络编程等领域UP🌍快上🚘,一起学习,让我们成为一个强大的攻城狮&#xff0…