先来看一下这个命令的定义:

Redis Zinterstore 命令计算给定的一个或多个有序集的交集,其中给定 key 的数量必须以 numkeys 参数指定,并将该交集(结果集)储存到 destination 。

默认情况下,结果集中某个成员的分数值是所有给定集下该成员分数值之和。

语法

redis Zinterstore 命令基本语法如下:

redis 127.0.0.1:6379> ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]

用大白话解释的话就是,首先这个命令是用来合并多个(也可以是两个)集合中共同拥有的key的值用的.

实例:

#创建一个数学成绩的有序集合,有三个学生 张三、李四、王五
127.0.0.1:6379> zadd math_score 50 'zhang san' 95 'lisi' 78 'wangwu'
(integer) 3
#按照升序查看结果集
127.0.0.1:6379>  zrangebyscore math_score 0 100 withscores
1) "zhang san"
2) "50"
3) "wangwu"
4) "78"
5) "lisi"
6) "95"
#创建一个英语成绩的有序集合,里面有四个学生 张三、李四、王五、朱六
127.0.0.1:6379> zadd english_score 90 'zhang san' 50 'zhu liu' 75 'lisi' 80 'wangwu'
(integer) 4
#按照升序查看结果集
127.0.0.1:6379> zrangebyscore english_score 0 100
1) "zhu liu"
2) "lisi"
3) "wangwu"
4) "zhang san"
#如果加了 withscores 结果集里面会出现成绩
127.0.0.1:6379>  zrangebyscore english_score 0 100 withscores
1) "zhu liu"
2) "50"
3) "lisi"
4) "75"
5) "wangwu"
6) "80"
7) "zhang san"
8) "90"
#现在我们想查看两门功课学生的总分排序,结果保存在新的集合sum_score中,
sum_score 后面的数字2 代表要合并几个集合,我们合并两个就写2.
127.0.0.1:6379> zinterstore sum_score 2 math_score english_score
(integer) 3
#查看合并后的结果,我们发现并没有 朱六的成绩,因为朱六的信息只存在于
english_score中,Zinterstore 命令计算给定的一个或多个有序集的交集,
也就是集合中共同有有的值才会合并到新的结果集中.
127.0.0.1:6379> zrangebyscore sum_score 0 300 withscores
1) "zhang san"
2) "140"
3) "wangwu"
4) "158"
5) "lisi"
6) "170"

转载于:https://www.cnblogs.com/xisuo/p/9239459.html

Zinterstore 命令相关推荐

  1. redis系列:通过文章点赞排名案例学习sortedset命令

    前言 这一篇文章将讲述Redis中的sortedset类型命令,同样也是通过demo来讲述,其他部分这里就不在赘述了. 项目Github地址:https://github.com/rainbowda/ ...

  2. Redis 键(key) 命令

    Redis 键(key) 命令 命令 描述 Redis DEL 命令 该命令用于在 key 存在是删除 key. Redis Dump 命令 序列化给定 key ,并返回被序列化的值. Redis E ...

  3. redis将散裂中某个值自增_这些Redis命令你都掌握了没?

    本章主要内容 字符串命令.列表命令和集合命令散列命令和有序集合命令发布命令与订阅命令其他命令 本章将介绍一些没有在第1章和第2章出现过的Redis命令,学习这些命令有助于读者在已有示例的基础上构建更为 ...

  4. Redis中的数据结构与常用命令

    开发系统:Ubuntu 17.04 Redis驱动:StackExchange.Redis 1.2.3 Redis版本:3.2.1 开发平台:.NET Core 对于Redis的介绍这里只写一句:Re ...

  5. 【Redis之ZSet类型的详解ZSet类型中常用命令的实践】

    Redis之ZSet类型的详解&ZSet类型中常用命令的实践 知识回顾: 通过对Redis中的String的命令做了充分的讲解以及实践学习 通过对Redis中String类型之Bit命令的详解 ...

  6. Redis命令详解:Sorted Sets

    Sorted Set(也称ZSET)和Set一样也是string类型的集合,你可以将它理解为Java中SortedSet和HashMap的集合体,一方面它是一个set,保证了元素的唯一性,另一方面它给 ...

  7. Redis教程及命令大全

    Redis 基础教程 Redis 教程.Redis 安装.Redis 配置.Redis 数据类型 Redis 命令 Redis 命令.Redis 键(key).Redis DEL 命令.Redis D ...

  8. Redis 基础 -- 有序集合 SortedSet类型 和 SortedSet类型的常用命令

    文章目录 1. 有序集合(SortedSet) 1.1 ZADD:添加或更新成员 1.1.1 更新已有成员的分值 1.1.2 指定要执行的操作 1.1.3 返回被修改成员的数量 1.1.4 时间复杂度 ...

  9. java获取zset_Redis Set和ZSet常用命令

    Redis Set和ZSet常用命令 Set 1. SADD :添加多个元素到集合中 127.0.0.1:6379> sadd goodfood "potato" " ...

最新文章

  1. R语言plotly可视化:plotly可视化箱图、基于预先计算好的分位数、均值、中位数等统计指标可视化箱图、箱图中添加缺口、可视化均值和标准差(With Precomputed Quartiles)
  2. CF E2 - Daleks' Invasion (medium) (LCA求两点树上路径上的最大边权)
  3. centos minimal 安装无法自定义分区
  4. 修改npm全局安装模式的路径
  5. 昇腾AI处理器软件栈--神经网络软件架构
  6. 外媒:苹果聘请更多司机在加州测试其自动驾驶汽车
  7. h264码流文件通过计算first_mb_in_slice区分帧边界
  8. python工资高还是java-未来Java、大数据、Python哪个前景更好,薪资更高?
  9. 学习面向对象的第一天,感觉还好啦
  10. 此系统上未启用启动项_解决系统死机的7种方法,维修电脑必备技巧,你知道几条...
  11. 数据结构—第六章 图
  12. 微信公众号CSS样式常见问题解析
  13. python源码编译为库_【Python笔记】如何源码编译依赖LAPACK和ATLAS库的NumPy包
  14. 360极速浏览器,关闭“开启DirectWrite高清字体渲染支持”导致内置打印崩溃
  15. 简要分析用MD5加密算法加密信息(如有疑问,敬请留言)
  16. html中textarea标签的换行
  17. 2023华中师范大学计算机考研信息汇总
  18. 计算机管理中打开移动硬盘磁盘必须格式化,最佳解决方案:无法打开移动硬盘分区,并且未格式化解决方案。...
  19. 年末阿里百度等大厂技术面试题汇总,原理+实战+视频+源码
  20. ROS2 学习古月居ros21讲学习笔记

热门文章

  1. 实时计算 Flink 版应用场景解读
  2. 揭秘!阿里数据中心大幅降低成本的核心技术:混部技术
  3. acwing 7 混合背包
  4. 006python路--深浅拷贝
  5. 注意1:图像插值理论的理解
  6. UVa 10642 - Can You Solve It?
  7. php+sqlserver实现分页效果
  8. mac 无法ssh localhost,错误提示:bash: /usr/local/bin/ssh_session: Permission denied
  9. wamp2.2-64位 localhost和localhost/phpmyadmin不能访问问题解决
  10. 戏说模式-追MM与设计模式 (转载)