## 基础配置内容 ``` //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: [ ] 添加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 ``` 这样联想记忆后会记得更快,倘若想要函数大全可以[点击查看](https://www.yuhenm.top/archives/215.html) 可以像 ``` clim.SPop(cty, "set_user").Result() ``` 一样在后面添加Result(),这样就不会打印内容时会有add命令类前缀返回了 ::aru:despise:: Loading... ## 基础配置内容 ``` //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 ``` 这样联想记忆后会记得更快,倘若想要函数大全可以[点击查看](<a href="https://www.yuhenm.top/archives/215.html)" title="https://www.yuhenm.top/archives/215.html)">https://www.yuhenm.top/archives/215.html)</a> 可以像 ``` clim.SPop(cty, "set_user").Result() ``` 一样在后面添加Result(),这样就不会打印内容时会有add命令类前缀返回了 <img src="https://www.yuhenm.top/usr/themes/handsome/assets/img/emotion/aru/despise.png" class="emotion-aru"> 最后修改:2022 年 05 月 04 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏