工作中用到, 百度找到并试用无好使的代码,记录下
Zset跟Set之间可以有并集运算,因为他们存储的数据字符串集合,不能有一样的成员出现在一个zset中,但是为什么有了set还要有zset呢?zset叫做有序集合,而set是无序的,zset怎么做到有序的呢?就是zset的每一个成员都有一个分数与之对应,并且分数是可以重复的。有序集合的增删改由于有啦排序,执行效率就是非常快速的,即便是访问集合中间的数据也是非常高效的。
java代码
RedisTemplate这个类不介绍了
Long count(K key, double min, double max);
计算数量(在一定范围内),就是两个分数之间的数据
redisTemplate.opsForZSet().count(messageListRedisKey, start, end);
Boolean add(K key, V value, double score);
添加数据至zset
redisTemplate.opsForZSet().add(messageListRedisKey, JsonUtil.toJson(dto), new Date().getTime());
Long removeRangeByScore(K key, double min, double max);
范围删除数据
redisTemplate.opsForZSet().removeRangeByScore(messageListRedisKey, start, end);
其他以后用上再测试,
参考:https://www.jianshu.com/p/7bf5dc61ca06/
这个案例典型的zset数据结构应用
https://blog.csdn.net/lzt099/article/details/76549015?locationNum=6&fps=1