redis 交集、并集、差集的具体使用_Redis

来源:脚本之家  责任编辑:小易  

一、sinter 、sunion 、sdiff

redis 支持 Set集合的数据存储,其中有三个比较特殊的方法:

sinter key [key …] 查看一个集合的全部成员,该集合是所有给定集合的交集。 sunion key [key …] 查看一个集合的全部成员,该集合是所有给定集合的并集。 sdiff key [key …] 查看所有给定 key 与第一个 key 的差集

1.1、sinter 交集的示例

redis> SMEMBERS group_1
1) "LI LEI"
2) "TOM"
3) "JACK"

redis> SMEMBERS group_2
1) "HAN MEIMEI"
2) "JACK"

redis> SINTER group_1 group_2  # 取的是交集的数据 
1) "JACK"

1.2、sunion 并集的示例

redis> SMEMBERS songs
1) "Billie Jean"

redis> SMEMBERS my_songs
1) "Believe Me"

redis> SUNION songs my_songs  # 取的是集合的并集数据据
1) "Billie Jean"
2) "Believe Me"

1.3、sdiff 差集的示例

redis> SMEMBERS peter_movies
1) "bet man"
2) "start war"
3) "2012"

redis> SMEMBERS joe_movies
1) "hi, lady"
2) "Fast Five"
3) "2012"

redis> SDIFF peter_movies joe_movies  # 取的是两个集合的差集的数据
1) "bet man"
2) "start war"

二、sinterstore、sunionstore、sdiffstore

sinterstore destination key [key …] 将 交集 数据存储到某个对象中 sunionstore destination key [key …] 将 并集 数据存储到某个对象中 sdiffstore destination key [key …] 将 差集 数据存储到某个对象中

2.1、sinterstore 交集的示例

redis> SMEMBERS songs
1) "good bye joe"
2) "hello,peter"

redis> SMEMBERS my_songs
1) "good bye joe"
2) "falling"

redis> SINTERSTORE song_interset songs my_songs   # 将交集的数据存储到 song_interset 对象中
(integer) 1

redis> SMEMBERS song_interset     # 查看 song_interset 对象中的 所有数据
1) "good bye joe"

2.2、sunionstore 并集的示例

redis> SMEMBERS NoSQL
1) "MongoDB"
2) "Redis"

redis> SMEMBERS SQL
1) "sqlite"
2) "MySQL"

redis> SUNIONSTORE db NoSQL SQL  # 将并集的数据存储到 db 对象中
(integer) 4

redis> SMEMBERS db   # 查看 db 对象中的 所有数据
1) "MySQL"
2) "sqlite"
3) "MongoDB"
4) "Redis"

2.3、sdiffstore 差集的示例

redis> SMEMBERS joe_movies
1) "hi, lady"
2) "Fast Five"
3) "2012"

redis> SMEMBERS peter_movies
1) "bet man"
2) "start war"
3) "2012"

redis> SDIFFSTORE joe_diff_peter joe_movies peter_movies   # 将差集的数据存储到 joe_diff_peter 对象中
(integer) 2

redis> SMEMBERS joe_diff_peter    # 查看 joe_diff_peter 对象中的 所有数据
1) "hi, lady"
2) "Fast Five"

到此这篇关于redis 交集、并集、差集的具体使用的文章就介绍到这了,更多相关redis 交集、并集、差集内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:Spring Boot Redis 集成配置详解Redis如何存储对象与集合示例详解详细分析Redis集群故障Redis有序集合类型的常用命令小结浅谈SpringBoot集成Redis实现缓存处理(Spring AOP实现)Redis集群搭建全记录Java调用Redis集群代码及问题解决Redis集群下过期key监听的实现代码

  • 本文相关:
  • 浅析redis分布式锁
  • 基于redis+lua脚本实现分布式限流组件封装的方法
  • redis连接错误的情况总结分析
  • redis中scan命令的基本使用教程
  • redis中的动态字符串学习教程
  • redis安装与使用方法小结
  • 基于redis实现的点赞功能设计思路详解
  • 基于redis的分布式锁的简单实现方法
  • redis发布订阅和实现.net客户端详解
  • redis数据库的安装配置方法
  • redis两个项目分开缓存怎么配置
  • 详细介绍redis的几种数据结构以及使用注意事项
  • redis缓存什么情况下用?怎末使用
  • 如何在 Redis 中配置多个可以访问的 IP 地址
  • redis的基本数据结构有哪些,都有什么应用
  • 如何配置多个redis缓存并且是主从关系
  • redis怎么清除key值前几个字符相同的缓存
  • redis set集合是什么意思
  • redis连接数高居不下,怎么破
  • 如何批量删除Redis下特定pattern的keys?
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页spring boot redis 集成配置详解redis如何存储对象与集合示例详解详细分析redis集群故障redis有序集合类型的常用命令小结浅谈springboot集成redis实现缓存处理(spring aop实现)redis集群搭建全记录java调用redis集群代码及问题解决redis集群下过期key监听的实现代码浅析redis分布式锁基于redis+lua脚本实现分布式限流组件封装的方法redis连接错误的情况总结分析redis中scan命令的基本使用教程redis中的动态字符串学习教程redis安装与使用方法小结基于redis实现的点赞功能设计思路详解基于redis的分布式锁的简单实现方法redis发布订阅和实现.net客户端详解redis数据库的安装配置方法超强、超详细redis数据库入门教程redis常用命令、常见错误、配置技redis操作命令总结redis中5种数据结构的使用场景介64位windows下安装redis教程redis中使用redis-dump导出、导入redis中统计各种数据大小的方法redis常用命令小结让redis在你的系统中发挥更大作用centos 6.6下redis安装配置记录图文详解windows下使用redis缓存工具的方redis服务器的启动过程分析简介redis中的showlog功能基于redis集群设置密码的实例redis-cli -p 6379 info命令详解redis分布式锁的问题与解决方法redis发布订阅_动力节点java学院整理redis 的 geohash详解redis教程(四):hashes数据类型redis分布式锁的正确实现方法总结
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved