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)

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐