创建redis连接
// 创建Redis客户端连接
redisClient := redis.NewClient(&redis.Options{
Addr: "127.0.0.1:6379",
Password: "",
DB: 0,
})
由于本地测试库 没有设置password 所以为空 根据需要修改为对应配置
添加
redisClient.ZIncrBy("demo_list", 1.0, "小明")
第一个参数key: 创建集合的名称 如果在第0分区中 没有demo_list会自动创建
第二个参数increment: 分数 float类型 可以为正数也可以为负数 为0时则代表不改变分数 但确保该数据还会存在
第三个参数member: 集合中的单个成员
上段代码中 创建了集合名称为 demo_list 的有序set集合 且添加一名成员 成员为小明 并为小明添加一分 在可视化工具中显示为
查询
value, err := client.ZRangeWithScores("demo_list", 0, -1).Result()
if err != nil {
if err != redis.Nil {
log.Panic(err)
}
}
for _, v := range value {
log.Print("成员: ",v.Member.(string))
log.Print("成员分数: ",int(v.Score))
}
第一个参数key: 集合名称
第二个参数start: 起始索引 0代表从第0个开始
第三个参数stop: 结束索引 -1代表到最后一个结束
由于根据client.ZRangeWithScores所得返回值 成员属性 member的类型为interface{} score的类型为float64 可以根据自己需求进行类型转换 不一定非要同上做类型转换
删除
result := redisClient.ZRem("demo_list", "小明")
第一个参数key: 集合的名称
第二个参数members: 集合中的成员 可以为单个或多个