SpringBoot中 集成 redisTemplate 对 Redis 的操作(四)HSet

原文链接: https://my.oschina.net/tcwong/blog/3100398

SpringBoot中 集成 redisTemplate 对 Redis 的操作(四)HSet

redis 数据结构中,set用于去重,hset 则用于 去重加排序.在hset 中,有两个概念:

1⃣️ rank 集合的下标

2⃣️score 集合排序的依据值

下面就来说一说hset 的基本操作

1、添加数据 并按score 排序 有相同的key-value score 会累加

    Boolean aBoolean = redisTemplate.opsForZSet().add(key, value, score);

2、在指定排序范围内 集合的值数量

    Long count = redisTemplate.opsForZSet().count(key, score1, score2);

3、集合内指定值 排序值增加

    Double aDouble = redisTemplate.opsForZSet().incrementScore(key, value, score);

4、集合1和集合2交集,并将交集排序值 相加

    Long aLong = redisTemplate.opsForZSet().intersectAndStore(key1, key2, key3);

5、指定下标范围内的集合值,第一个值下标为0,最后一个为-1

    Set set = redisTemplate.opsForZSet().range(key, sIndex, eIndex);

6、指定排序范围内的集合值

    Set set = redisTemplate.opsForZSet().rangeByScore(key, sScore, eScore);

7、集合中指定值的下标

    Long rank = redisTemplate.opsForZSet().rank(key, value);

8、移除集合中指定值

    Long remove = redisTemplate.opsForZSet().remove(key, value);

9、移除集合中指定下标范围内的值

    Long aLong = redisTemplate.opsForZSet().removeRange(key, sIndex, eIndex);

10、移除集合中指定排序范围内的值

    Long aLong = redisTemplate.opsForZSet().removeRangeByScore(key, sScore, eDouble);

11、反向获取指定集合中的指定范围值

    Set set = redisTemplate.opsForZSet().reverseRange(key, sIndex, eIndex);

12、集合的并集添加至新集合,重叠的value, 排序值相加

    Long aLong = redisTemplate.opsForZSet().unionAndStore(key1, key2, key3);

ok,目前为止,redis 系列的基本操作就说到这里,后面会讲redis 的基本原理,欢迎继续关注

转载于:https://my.oschina.net/tcwong/blog/3100398

你可能感兴趣的:(SpringBoot中 集成 redisTemplate 对 Redis 的操作(四)HSet)