写在前面的话:读书破万卷,编码如有神
--------------------------------------------------------------------
 
--------------------------------------------------------------------
1、zadd :添加元素,格式是:zadd zset的key score值 项的值, Score和项可以是多对,score可以是整数,也可以是浮点数,还可以是+inf表示无穷大,-inf表示负无穷大
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 import java.util.HashMap;
import java.util.Map; /**
* redis中对于ZSet类型的: zadd 操作示例
* zadd :添加元素,格式是:zadd zset的key score值 项的值, Score和项可以是多对,score可以是整数,也可以是浮点数,还可以是+inf表示无穷大,-inf表示负无穷大
*/
public class ZSet_zadd_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zadd zset的key score值 项的值, Score和项可以是多对,score可以是整数,也可以是浮点数,还可以是+inf表示无穷大,-inf表示负无穷大
*/
Long zadd = jedis.zadd("myzset", 10.0, "v1");
System.out.println("zadd = " + zadd); Map<String,Double> map = new HashMap<>();
map.put("v2",20.0);
map.put("v3",30.0);
Long myzset = jedis.zadd("myzset", map);
System.out.println("myzset = " + myzset);
}
}
2、zrange :获取索引区间内的元素,格式是:zrange zset的key 起始索引 终止索引 (withscore)
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;
import redis.clients.jedis.Tuple; import java.util.Set; /**
* redis中对于ZSet类型的: zrange 操作示例
* zrange :获取索引区间内的元素,格式是:zrange zset的key 起始索引 终止索引 (withscore)
*/
public class ZSet_zrange_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zrange zset的key 起始索引 终止索引 (withscore)
*/
Set<String> zrange = jedis.zrange("myzset", 0, -1);
System.out.println("zrange = " + zrange); Set<Tuple> zrangeWithScores = jedis.zrangeWithScores("myzset", 0, -1);
System.out.println("zrangeWithScores = " + zrangeWithScores);
}
3、zrangebyscore :获取分数区间内的元素,格式是:zrangebyscore zset的key 起始score 终止score (withscore),默认是包含端点值的,如果加上"("表示不包含,后面还可以加上limit来限制。
操作如下:
java示例代码:
 /**
* redis中对于ZSet类型的: zrange 操作示例
* zrangebyscore :获取分数区间内的元素,格式是:zrangebyscore zset的key 起始score 终止score (withscore),默认是包含端点值的,如果加上"("表示不包含,后面还可以加上limit来限制。
*/
public class ZSet_zrangebyscore_operation { public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zrangebyscore zset的key 起始score 终止score (withscore),默认是包含端点值的,如果加上"("表示不包含,后面还可以加上limit来限制。
*/
Set<String> zrangeByScore = jedis.zrangeByScore("myzset", 10.0, 25.0);
System.out.println("zrangeByScore = " + zrangeByScore); Set<Tuple> zrangeByScoreWithScores = jedis.zrangeByScoreWithScores("myzset", 10.0, 25.0);
System.out.println("zrangeByScoreWithScores = " + zrangeByScoreWithScores); }
}
4、zrem :删除元素,格式是:zrem zset的key 项的值,项的值可以是多个
操作如下:
java示例代码:
 /**
* redis中对于ZSet类型的: zrange 操作示例
* zrem :删除元素,格式是:zrem zset的key 项的值,项的值可以是多个
*/
public class ZSet_zrem_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* zrem zset的key 项的值,项的值可以是多个
*/
Long zrem = jedis.zrem("myzset", "v1", "v2");
System.out.println("zrem = " + zrem);
}
}
5、zcard :获取集合中元素个数,格式是:zcard zset的key
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zcard :获取集合中元素个数,格式是:zcard zset的key
*/
public class Zset_zcard_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zcard zset的key
*/
Long zcard = jedis.zcard("myzset");
System.out.println("zcard = " + zcard);
}
}
6、zincrby :增减元素的score,格式是:zincrby zset的key 正负数字 项的值
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zincrby :增减元素的score,格式是:zincrby zset的key 正负数字 项的值
*/
public class ZSet_zincrby_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zincrby zset的key 正负数字 项的值
*/
Double zincrby = jedis.zincrby("myzset", 12, "v1");
System.out.println("zincrby = " + zincrby);
}
}
7、zcount : 获取分数区间内元素个数,格式是:zcount zset的key 起始score 终止score
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zcount : 获取分数区间内元素个数,格式是:zcount zset的key 起始score 终止score
*/
public class ZSet_zcount_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1: zcount zset的key 起始score 终止score
*/
Long zcount = jedis.zcount("myzset", 20.0, 50.0);
System.out.println("zcount = " + zcount);
}
}
8、zrank : 获取项在zset中的索引,格式是:zrank zset的key 项的值
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zrank : 获取项在zset中的索引,格式是:zrank zset的key 项的值
*/
public class ZSet_zrank_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zrank zset的key 项的值
*/
Long zrank = jedis.zrank("myzset", "v2");
System.out.println("zrank = " + zrank); Long zrank2 = jedis.zrank("myzset", "v3");
System.out.println("zrank2 = " + zrank2);
}
}
9、zscore :获取元素的分数,格式是:zscore zset的key 项的值,返回项在zset中的score
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zscore :获取元素的分数,格式是:zscore zset的key 项的值,返回项在zset中的score
*/
public class ZSet_zscore_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zscore zset的key 项的值,返回项在zset中的score
*/
Double zscore = jedis.zscore("myzset", "v2");
System.out.println("zscore = " + zscore); Double zscore2 = jedis.zscore("myzset", "v4");
System.out.println("zscore2 = " + zscore2); Double zscore3 = jedis.zscore("myzset", "v10");
System.out.println("zscore3 = " + zscore3);
}
}
10、zrevrank :获取项在zset中倒序的索引,格式是:zrevrank zset的key 项的值
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zrevrank :获取项在zset中倒序的索引,格式是:zrevrank zset的key 项的值
*/
public class ZSet_zrevrank_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zrevrank zset的key 项的值
*/
Long zrevrank = jedis.zrevrank("myzset", "v2");
System.out.println("zrevrank = " + zrevrank); Long zrevrank2 = jedis.zrevrank("myzset", "v1");
System.out.println("zrevrank2 = " + zrevrank2); Long zrevrank3 = jedis.zrevrank("myzset", "v6");
System.out.println("zrevrank3 = " + zrevrank3);
}
}
11、zrevrange :获取索引区间内的元素,格式是:zrevrange zset的key 起始索引 终止索引(withscores)
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 import java.util.Set;

 /**
* redis中对于ZSet类型的: zrange 操作示例
* zrevrange :获取索引区间内的元素,格式是:zrevrange zset的key 起始索引 终止索引(withscores)
*/
public class ZSet_zrevrange_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zrevrange zset的key 起始索引 终止索引(withscores)
*/
Set<String> zrevrange = jedis.zrevrange("myzset", 0, -1);
System.out.println("zrevrange = " + zrevrange);
}
}
12、zrevrangebyscore:获取分数区间内的元素,格式是:zrevrangebyscore zset的key 终止score 起始score(withscores)
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;
import redis.clients.jedis.Tuple; import java.util.Set; /**
* redis中对于ZSet类型的: zrange 操作示例
* zrevrangebyscore:获取分数区间内的元素,格式是:zrevrangebyscore zset的key 终止score 起始score(withscores)
*/
public class ZSet_zrevrangebyscore_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zrevrangebyscore zset的key 终止score 起始score(withscores)
*/
Set<String> zrevrangeByScore = jedis.zrevrangeByScore("myzset", 35.0, 15.0);
System.out.println("zrevrangeByScore = " + zrevrangeByScore); Set<Tuple> zrevrangeByScoreWithScores = jedis.zrevrangeByScoreWithScores("myzset", 35.0, 15.0);
System.out.println("zrevrangeByScoreWithScores = " + zrevrangeByScoreWithScores);
}
}
13、zremrangebyrank:删除索引区间内的元素,格式是:zremrangebyrank zset的key 起始索引 终止索引
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zremrangebyrank 操作示例
* zremrangebyrank:删除索引区间内的元素,格式是:zremrangebyrank zset的key 起始索引 终止索引
*/
public class ZSet_zremrangebyrank_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zremrangebyrank zset的key 起始索引 终止索引
*/
Long zremrangeByRank = jedis.zremrangeByRank("myzset", 0, 2);
System.out.println("zremrangeByRank = " + zremrangeByRank);
}
}
14、zremrangebyscore:删除分数区间内的元素,格式是:zremrangebysocre zset的key 起始score 终止score
操作如下:
java示例代码:
 import redis.clients.jedis.Jedis;

 /**
* redis中对于ZSet类型的: zremrangebyrank 操作示例
* zremrangebyscore:删除分数区间内的元素,格式是:zremrangebysocre zset的key 起始score 终止score
*/
public class ZSet_zremrangebyscore_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zremrangebysocre zset的key 起始score 终止score
*/
Long zremrangeByScore = jedis.zremrangeByScore("myzset", 30, 40);
System.out.println("zremrangeByScore = " + zremrangeByScore);
}
}
15、zinterstore:交集,格式是:zinterstore dest-key key-count key[key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
操作如下:
原始数据:

java示例代码:
 import redis.clients.jedis.Jedis;
import redis.clients.jedis.ZParams; /**
* redis中对于ZSet类型的: zinterstore 操作示例
* zinterstore:交集,格式是:zinterstore dest-key key-count key[key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
*/
public class ZSet_zinterstore_operation {
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1",6379); /**
* 示例1:zinterstore dest-key key-count key[key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
*/
Long zinterstore = jedis.zinterstore("myzset3", "myzset1", "myzset2");
System.out.println("zinterstore = " + zinterstore); Long zinterstore1 = jedis.zinterstore("myzset4", new ZParams().aggregate(ZParams.Aggregate.MAX), "myzset1", "myzset2");
System.out.println("zinterstore1 = " + zinterstore1);
}
}
16、zunionstore:并集,格式是:zunionstore dest-key key-count key[key ...][WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
操作如下:
原始数据:

 
 
 
 
 
 
 
 
 
 

7、Redis中对ZSet类型的操作命令的更多相关文章

  1. 6、Redis中对Hash类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  2. 5、Redis中对Set类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  3. 4、Redis中对List类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  4. 3、Redis中对String类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  5. Python(Redis 中 Set/Zset 类型数据和其他操作)

    1.redis 基本操作命令 Set 操作 Set 集合就是不允许重复的列表 无序集合 sadd(name,values) 给 name 对应的集合中添加 1 个或多个元素 import redis ...

  6. Redis自学笔记–Zset类型及管理简述

    Zset类型                                                                                               ...

  7. Redis中一个String类型引发的惨案

    ​      曾经看到这么一个案例,有一个团队需要开发一个图片存储系统,要求这个系统能快速记录图片ID和图片存储对象ID,同时还需要能够根据图片的ID快速找到图片存储对象ID.我们假设用10位数来表示 ...

  8. redis中对list类型某个元素的查找和删除

    我们的信息都是放到redis的缓存中,结构为list,如果知道特定的值的话,通过LREM  key  count  value这样就可以.对于redis的list结构,获取某个位置的值通过 LINDE ...

  9. SpringBoot:Redis中的zset

    zset被描述为有序集合,但RedisTemplate的OpsForZSet().range方法的返回值是set,那么: 这样直接查询zset返回set的操作会使得元素失去顺序吗? 先明确:Set是什 ...

随机推荐

  1. 分布式锁--Redis小试牛刀

    参考文章: Redis分布式锁的正确实现方式 分布式锁看这篇就够了 在这两篇文章的指引下亲测 Redis分布式锁 引言 分布式系统一定会存在CAP权衡问题,所以才会出现分布式锁 什么是CAP理论? 为 ...

  2. Java SSM框架之MyBatis3(二)MyBatis之Mapper代理的开发方式

    Mapper代理的开发规范 1. mapper接口的全限定名要和mapper映射文件的namespace值一致. 2. mapper接口的方法名称要和mapper映射文件的statement的id一致 ...

  3. str和unicode类

    在py2中,分为两类,str和unicode 而在py3中,分为两类,byte和str py2中的str等同于py3中的byte 首先明确一点,我们编辑好一段文本,python并不知道我们的文本是以什 ...

  4. JAVA不可变类与可变类、值传递与引用传递深入理解

    一个由try...catch...finally引出的思考,在前面已经初步了解过不可变与可变.值传递与引用传递,在这里再次深入理解. 1.先看下面一个try..catch..finally的例子: P ...

  5. linux驱动---等待队列、工作队列、Tasklets【转】

    转自:https://blog.csdn.net/ezimu/article/details/54851148 概述: 等待队列.工作队列.Tasklet都是linux驱动很重要的API,下面主要从用 ...

  6. 【坐在马桶上看算法】算法7:Dijkstra最短路算法

           上周我们介绍了神奇的只有五行的Floyd最短路算法,它可以方便的求得任意两点的最短路径,这称为“多源最短路”.本周来来介绍指定一个点(源点)到其余各个顶点的最短路径,也叫做“单源最短路径 ...

  7. oracle日期、转换函数

    转换函数 日期类型转换成字符类型 select to_char(sysdate) s1, --14-3月 -16        to_char(sysdate, 'yyyy-mm-dd') s2, - ...

  8. 使用android模拟器开发程序

    自从android studio升级到3.0之后自带的模拟器已经很好用了,尤其是升级后可以想vmware那样休眠,再次开启就可以快速启动了 以下是几点可以更方便地使用系统模拟器进行开发的小技巧,毕竟模 ...

  9. Laravel Model 的 fillable (白名单)与 guarded (黑名单)

    例如 protected $fillable = ['name']; protected $guarded = ['price']; 定义了 name 字段可以写入/修改,而 price 字段不可以. ...

  10. Java编程的逻辑 (62) - 神奇的序列化

    本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...