redis有序集合
**
1,新增或更新有序集合
**
/**
*
* 修改有序集合 key member的值
Redis Zincrby 命令對有序集合中指定成員的分數加上增量 increment
可以通過傳遞一個負數值 increment ,讓分數減去相應的值,比如 ZINCRBY key -5 member ,就是讓 member 的 score 值減去 5 。
當 key 不存在,或分數不是 key 的成員時, ZINCRBY key increment member 等同於 ZADD key increment member 。
當 key 不是有序集型別時,返回一個錯誤。
分數值可以是整數值或雙精度浮點數。
* @param key
* @param increment
* @param member
*/
protected static Double zincrby(String key, double increment, String member) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
return jedis.zincrby(key, increment, member);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
// TODO Auto-generated catch block
}
}
return null;
}
2,查詢有序集合
/**
* 顯示有序集 名字 分數 由大到小
*
* @param key
* @return
* @throws Exception
*/
protected static Set<Tuple> rangeWithScores(String key, long start, long end) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
return jedis.zrevrangeWithScores(key, start, end);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
// TODO Auto-generated catch block
}
}
return null;
}
3,查詢有序集合總數
/**
* 查詢zadd的總數
* @param key
* @return
*/
protected static long ZCARD(String key) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
return jedis.zcard(key);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
// TODO Auto-generated catch block
}
}
return 0;
}
**
4,移除有序集合
**
/**
* 移除 有序集合
*
* @param key
* @param members
* return 0,移除不存在元素,1移除一個元素
*/
protected static long ZREM(String key, String members) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
return jedis.zrem(key, members);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
// TODO Auto-generated catch block
}
}
return 0;
}
5,移除有序集中,指定分數(score)區間內的所有成員
/**
* Redis Zremrangebyscore 命令用於移除有序集中,指定分數(score)區間內的所有成員。
*/
protected static Long zremrangebyscore(String key, double start, double end) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
return jedis.zremrangeByScore(key, start, end);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
// TODO Auto-generated catch block
}
}
return 0L;
}
**
6,獲取排名
**
/**
*
* @param key
* @param member
* @return 排名
*/
protected static Long rank(String key, String member) {
Jedis jedis = null;
try {
jedis = ConnectionManager.getConnection();
Long zk = jedis.zrevrank(key, member);
return zk;
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
} finally {
try {
ConnectionManager.closeConnection(jedis);
} catch (Exception e) {
logger.info("redis bug:" + e.getMessage());
logger.info(" kkkredis 關閉jedis異常" + e.getMessage());
}
}
return -1l;
}
相關文章
- Redis有序集合原理Redis
- Redis有序集合物件Redis物件
- Redis有序集合操作Redis
- Redis有序集合命令Redis
- Redis有序集合詳解Redis
- Redis有序集合學習Redis
- Redis物件——有序集合(ZSet)Redis物件
- Redis雜湊與有序集合Redis
- redis學習之有序集合Redis
- php操作redis,有序集合zsetPHPRedis
- redis 有序集合(sorted set)(redis學習七)Redis
- 《Redis實戰》筆記-Redis的有序集合Redis筆記
- Redis 有序集合(zset)命令詳解Redis
- 【Redis實戰】有序集合型別Redis型別
- Redis 入門指南九:Redis 有序集合(sorted set)Redis
- Python&Redis 無序集合set、有序集合zset操作PythonRedis
- redis有序集合實現實時排名Redis
- 《閒扯Redis十一》Redis 有序集合物件底層實現Redis物件
- [Redis 系列]redis 學習四,set 集合,hash 雜湊,zset 有序集合初步認知Redis
- 【Redis 系列】redis 學習四,set 集合,hash 雜湊,zset 有序集合初步認知Redis
- 使用Redis的有序集合實現排行榜功能Redis
- 使用 Redis 有序集合實現 IP 歸屬地查詢Redis
- Redis五大資料型別之 Zset(有序集合)Redis大資料資料型別
- Python–Redis實戰:第三章:Redis命令:第五節:有序集合PythonRedis
- redis之有序集合型別(Zset)——排行榜的實現Redis型別
- redis——集合,有序,慢查詢, pipline與事務, bitmap ,HyperLogLog geoRedis
- redis~有序集合處理ip範圍的查詢問題Redis
- (免費領取紅包封面)[Redis 系列]redis 學習四,set 集合,hash 雜湊,zset 有序集合初步認知Redis
- (免費領取紅包封面)【Redis 系列】redis 學習四,set 集合,hash 雜湊,zset 有序集合初步認知Redis
- PHP+Redis 有序集合實現 24 小時排行榜實時更新PHPRedis
- 面試官:Redis中有序集合的內部實現方式是什麼?面試Redis
- Redis 設計與實現 10:五大資料型別之有序集合Redis大資料資料型別
- redis集合Redis
- Redis命令介紹之有序集合的操作命令(第一部分)Redis
- redis的有序集的實現原理Redis
- redis原始碼分析之有序集SortedSetRedis原始碼
- 有序列表和集合插入操作的耗時差距
- Redis 集合統計(HyperLogLog)Redis