1. 程式人生 > >redis zset 相關操作 瞭解下

redis zset 相關操作 瞭解下

工作中用到, 百度找到並試用無好使的程式碼,記錄下

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