基础配置内容

    //string函数实践
    var cty=context.Background()
    //链接数据库
    clim:=redis.NewClient(&redis.Options{
        Addr: "localhost:6379",
        Password: "",
        DB: 0,
    })

string操作 ---------------------------------

    fmt.Println("string操作 ---------------------------------")
    //为名字是user的string的value赋值   3000是过期时间,0则是永远不过期
    fmt.Println("为名字是user的string的value赋值",clim.Set(cty,"user","admin",3000))
    fmt.Println("为名字是age的string的value赋值",clim.Set(cty,"age",0,3000))

    /*
    数字的自增和自减 通常时点赞和评论数字
     */
    fmt.Println("让age自增",clim.Incr(cty,"age"))
    fmt.Println("让age自减",clim.Decr(cty,"age"))


    //返回数值为user的string的value值
    fmt.Println("返回数值为user的string的value值",clim.Get(cty,"user"))

    //返回库中多个key的value
    fmt.Println("返回库中多个key的value",clim.MGet(cty,"user","age"))

    //添加key和value
    fmt.Println("添加key和value",clim.SetNX(cty,"string_user","18h",3000))

    //向string_user的value后面添加wdnmd
    fmt.Println("向key的value后面添加内容",clim.Append(cty,"string_user","wdnmd"))
    //最后结果为 18hwdnmd
    fmt.Println("添加的最后结果为",clim.Get(cty,"string_user"))

string的打印内容

为名字是user的string的value赋值 set user admin px 1: OK
为名字是age的string的value赋值 set age 0 px 1: OK
让age自增 incr age: 1
让age自减 decr age: 0
返回数值为user的string的value值 get user: redis: nil
返回库中多个key的value mget user age: [<nil> <nil>]
添加key和value set string_user 18h px 1 nx: true
向key的value后面添加内容 append string_user wdnmd: 8
添加的最后结果为 get string_user: 18hwdnmd

list/切片 操作 -----------------------------------


    //在key的list尾部添加元素
    fmt.Println("在key的list尾部添加元素",clim.RPush(cty,"list_user","test"))

    //在key头部添加元素
    fmt.Println("在key头部添加元素",clim.LPush(cty,"list_user","append head"))

    //返回key的长度
    fmt.Println("返回key的长度",clim.LLen(cty,"list_user"))

    //返回指定list索引内容
    fmt.Println("返回指定list索引内容",clim.LIndex(cty,"list_user",1))

    //返回指定list索引内容范围 1-6
    fmt.Println("返回指定list索引内容范围 1-6",clim.LTrim(cty,"list_user",1,6))

    //给list指定索引地址赋值
    fmt.Println("给list指定索引地址赋值",clim.LSet(cty,"list_user",1,"wdnmd 我是赋值的"))

    //给list指定索引地址删除内容
    fmt.Println("删除list的所有包含test的内容",clim.LRem(cty,"List_user",2,"test"))

    //删除list_user的最后一个元素
    fmt.Println("删除list_user的最后一个元素",clim.RPop(cty,"list_user"))

    //删除list_user的第一个元素
    fmt.Println("删除list_user的第一个元素",clim.LPop(cty,"list_user"))

打印内容

在key的list尾部添加元素 rpush list_user test: 1
在key头部添加元素 lpush list_user append head: 2
返回key的长度 llen list_user: 2
返回指定list索引内容 lindex list_user 1: test
返回指定list索引内容范围 1-6 ltrim list_user 1 6: OK
给list指定索引地址赋值 lset list_user 1 wdnmd 我是赋值的: ERR index out of range
删除list的所有包含test的内容 lrem List_user 2 test: 0
删除list_user的最后一个元素 rpop list_user: test
删除list_user的第一个元素 lpop list_user: redis: nil

集合set操作--------------------------


    //向名称为set_use(他是key)r添加元素
    fmt.Println("向名称为set_user添加元素",clim.SAdd(cty,"set_user","wdnmd","sdfsdg"))

    //删除名称为set_user的元素
    fmt.Println("删除名称为set_user的元素",clim.SRem(cty,"set_user","wdnmd"))

    //随机删除set_user中的一个元素
    fmt.Println("随机删除set_user中的一个元素",clim.SPop(cty,"set_user"))

    //移动元素到另一个集合  没有元素会返回false
    fmt.Println("移动元素到另一个集合",clim.SMove(cty,"set_user","set_user_in","wdnmd"))

打印内容

向名称为set_user添加元素 sadd set_user wdnmd sdfsdg: 2
删除名称为set_user的元素 srem set_user wdnmd: 1
随机删除set_user中的一个元素 spop set_user: sdfsdg
移动元素到另一个集合 smove set_user set_user_in wdnmd: false

大家了解这些函数后,是不是觉得函数很多,很难记,这里建议用联想法,

string的Set=list的LSet=集合的SAdd

这样联想记忆后会记得更快,倘若想要函数大全可以点击查看
可以像

 clim.SPop(cty, "set_user").Result()

一样在后面添加Result(),这样就不会打印内容时会有add命令类前缀返回了

最后修改:2022 年 05 月 04 日
如果觉得我的文章对你有用,请随意赞赏