redis zset实现对某个value的score加1操作(golang)
redis zset实现对某个value的score加1操作(golang)
·
client := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // Redis 无密码
DB: 0, // 默认数据库
})
// 获取 zset 数据结构中 score 最小的一条数据
result, err := client.ZRangeWithScores(context.Background(), "myzset", 0, 0).Result()
if err != nil {
// 处理错误
}
if len(result) == 0 {
// zset 数据结构为空
}
// result 中第一个元素就是 score 最小的一条数据,第二个元素就是该数据的 score 值
minScoreData := result[0]
minScore := minScoreData.Score
minData := minScoreData.Member
fmt.Println(minScore, minData)
newScore, err := client.ZIncrBy(context.Background(), "myzset", 1, minScoreData.Member.(string)).Result()
if err != nil {
// 处理错误
}
fmt.Printf("成员 %s 的 score 值增加为 %f\n", minScoreData.Member, newScore)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献3条内容
所有评论(0)