当前位置: 首页 > news >正文

Redis——set类型详解

概要

Set(集合),将一些有关联的数据放到一起,集合中的元素是无序的,并且集合中的元素是不能重复的

之前介绍的list就是有序的,对于列表来说[1, 2, 3] 和 [2, 1, 3]是两个不同的列表,而对于集合来说,[1, 2, 3] 和 [2, 1, 3]是同一个集合

并且,set类型和list类型类似,每个元素都是string类型的

sadd

向集合中添加一个或多个元素,返回成功添加了多少个元素,时间复杂度O(1)
在这里插入图片描述
演示:
在这里插入图片描述

smembers

获取set中全部的元素
在这里插入图片描述

sismember

判断当前元素是否在集合中,如果在返回1,如果不在返回0
在这里插入图片描述
演示:
在这里插入图片描述

scard

获取集合中元素的个数,如果key不存在则返回0
在这里插入图片描述

spop

随机删除集合中count个元素(不写count就是随机删除一个元素),返回删除的元素

在这里插入图片描述
演示:
在这里插入图片描述
官方文档中展示了,spop实现时采用了生成随机数的方式来随机删除

srandmember

和spop类似,随机获取元素,但是不删除
在这里插入图片描述

smove

把一个元素从source集合中取出来,放到destination集合中
在这里插入图片描述
演示:
在这里插入图片描述
如果source中移动的元素在destination中已经存在,source中的元素确实会删除,但是destination中并不会再次插入元素
在这里插入图片描述
如果source中不存在要移动的元素,则返回0

在这里插入图片描述

srem

删除集合中一个或多个元素,返回值是成功删除的元素个数

在这里插入图片描述
演示:
在这里插入图片描述

集合间操作

sinter

获取若干个key的交集,时间复杂度O(N*M)
在这里插入图片描述
演示:
在这里插入图片描述

sinterstore

获取若干个key的交集,将结果放到destination中,返回值是交集的元素个数

在这里插入图片描述
演示:
在这里插入图片描述

http://www.lryc.cn/news/129792.html

相关文章:

  • redis---》高级用法之慢查询/pipline与事务/发布订阅/bitmap位图/HyperLogLog/GEO地理位置信息/持久化
  • Find My资讯|苹果Vision Pro开发者需将设备配对 AirTag
  • Go 语言中排序的 3 种方法
  • 12----Emoji表情
  • C++四种强制类型转换
  • git仓库新建上传记录
  • flutter调用so
  • c#依赖注入
  • Django框架使用定时器-APScheduler实现定时任务:django实现简单的定时任务
  • Go学习笔记之数据类型
  • Spring Cloud 微服务
  • SpringBoot属性配置
  • 算法通关村第十关 | 归并排序
  • SpringBoot3集成Kafka
  • css学习1
  • rust踩雷笔记(1)——切片传参和解引用赋值
  • 安全 1自测
  • 寻路算法小游戏
  • CSS基础 知识点总结
  • 自动执行探索性数据分析 (EDA),更快、更轻松地理解数据
  • 【自定义系统服务】【android13】添加自定义java系统服务
  • 【Sklearn】基于随机梯度下降算法的数据分类预测(Excel可直接替换数据)
  • 44、TCP报文(二)
  • 目标检测(Object Detection)
  • vue中实现文字检索时候将搜索内容标红
  • PCL protocol composition logic
  • 聊聊看React和Vue的区别
  • OSPF在广播类型的网络拓扑中DR和BDR的选举
  • 系统学习Linux-Mariadb高可用MHA
  • 慢SQL的原因