美文网首页
redis操作命令总结

redis操作命令总结

作者: 小闫同学啊 | 来源:发表于2019-01-22 14:45 被阅读0次

    redis操作命令总结

    如果你是用手机再看这篇文章的话,有可能代码块部分会根据手机自动换行等影响体验,你可以更换电脑查看,如果是习惯手机查看,或者不方便使用电脑的话。那么可以关注我的公众号《小闫笔记》,在历史记录中搜索这篇文章即可。

    1.启动redis服务端和客户端

    服务端启动redis-server(server服务器)

    客户端启动:redis-cli (cli代表的就是client客户端)

    2.redis操作之string类型(最常使用,请掌握)

    2.1设置(增加)数据

    1/单个键值对set key value(set设置,key键,value值)

    2/给键值对设置有效期setex key second value (second秒,直接填数值即可,默认的单位是秒)

    3/设置多个 键值对:mset key1 value1 key2 value2(m可以是many多的意思)

    4/追加值:append key value(append增加,这个单词大家肯定不陌生)

    2.2获取数据

    1/获取单个值get key(get得到)

    2/获取多个值:mget key1 key2

    2.3 通过键查看值

    1/查看所有的键keys *

    2/查看以a开头的键:keys 'a*'

    3/查看键是否存在:exists key1(exist存在)

    4/查看键的类型:type key1(type类型)

    2.4 删除键值对

    1/删除键:del key1 key2(del是delete删除的意思)

    2/设置键有效期,删除键:expire key seconds(seconds是秒second的复数形式,说明单位是秒,我们可以设置很长时间)

    3/查看键的有效期:ttl key(对不起,这个我实在是想不出单词和他对应了>.<...)

    3.redis操作之hash类型

    3.1增加数据

    1/在散列键key中关联给定的域值对(filed-value pair):hset key field value

    说明:如果域field之前没有关联值,那么命令返回1,如果已经关联过了,那么新值覆盖旧值,返回0

    2/给一个散列键里面设置多个域值对;hmset key filed1 value1 field2 value2....

    实例:hmset name wangtao ha xiaoyan xi代表的是给散列name里面存了wangtao-ha和xiaoyan-xi这两个域值对

    3.2获取数据

    1/ 返回散列键 key 中,域 field 所关联的值:hget key field

    说明:如果域field没有关联值,那么返回nil

    2/获取多个域所关联的值:hmget key filed1 field2....

    实例:hmget name wangtao xiaoyan获取散列键name里面域wangtao和xiaoyan所关联的值

    3/获取散列键中所有的域:hkeys key

    实例:hkeys name获取散列键name里面所有的域

    3.3 删除数据

    1/删除散列键 key 中的一个或多个指定域,以及那些域的值:hdel key filed1 filed2...

    说明:不存在的域将被忽略。命令返回被成功删除的域值对数量。

    3.4 记忆小窍门

    1/之前字符串类型中的操作命令掌握之后,我们再来看hash类型的命令,会发现好多命令都是相同的,只是在前面加了一个专属hash类型的标识h,大家可以看hget和hset等等

    2/其实hash类型就是相当于给key里面存一个一个的field-value键值对,比字符串类型的多了一层而已,大家学完再回顾一遍就会发现不难了

    4.redis操作之list类型

    4.1插入数据

    1/左侧插入数据:lpush key value1 value2..(l代表的是left左侧可以形象的理解为从左向右推)

    ps:(也许这里你会发现个小问题,就是自己设置完值后,在取值的时候,发现值的顺序变成了倒序,不要怀疑你的眼睛,其实它没问题,当然也不是你的问题,给大家简单的解释一下这个原理:就是我们从左向右推进去,那么随着第二个值推进去,第一个值是不是就被推到里面了,我们一般的排序或者下标索引是不是从左开始标号0123,那么是不是第二个就变成了第一个呢?)

    2/右侧插入数据:rpush key value1 value2..(r代表的是right右侧,可以结合前面理解为从右向左侧推)

    3/指定key,旧元素位置前插入元素

    linsert key before oldvalue newvalue(insert是插入的意思,l可以理解为时list列表的操作方法,oldvalue指的是旧元素,newvalue指的就是要插入的新元素)

    4/指定key,旧元素位置后插入元素

    linsert key after oldvalue newvalue(这里的灵魂单词便是after后面的意思,和前面的before一样,只需要记俩单词即可)

    4.2获取数据

    1/获取从编号start位置到编号stop位置的元素

    lrange key start stop(l可以理解为list列表,range就是范围的意思,start是开始,stop是结束,这样应该就好记忆一些了)

    tip:(最后一个元素的下标索引可以使用-1)

    实例:lrange list 0 -1查看列表的所有值,从第0号元素开始到最后一个元素

    2/设置指定索引位置的元素值:

    lset key index value(l依旧是list,index指的是索引下标)

    4.3删除数据

    1/将key域列表中,前count次,值为value的元素删除:

    lrem key count value(l还是list,rem是remove移除的意思,count就是次数)

    tip:(这里有一个小点:当count>0的时候从头开始数,当count<0的时候,从屁股开始数"请原谅我的粗鲁,话糙理不糙",当count=0的时候查找的就是所有的元素)

    5. redis的操作之set

    5.1添加元素

    1/向key域(集合)中添加多个数据

    sadd key member1 member2...(s代表的就是set集合,add就是增加的意思,member就是成员的意思,意思就是给key里面添加成员(元素))

    特点:有序.不重复

    5.2获取元素

    获取key域集合的所有元素:

    smembers key(s就是set集合,members是member成员(元素)的复数形式,就是查所有的元素了)

    5.3删除元素

    删除指定的key元素的值:

    srem key value(s就是set集合,rem就是remover删除的意思)

    6. redis的操作之zset

    6.1增加数据

    向key域结合中添加多个score1,member1数据

    zadd key score1 member1 score2 member2...(z就是zset类型,add是增加的意思,score是分数和记录的意思,member就是成员的意思,意思就是记录一个成员(元素),记录一个成员(元素)吧)

    6.2获取数据

    1/返回指定范围内的member元素:

    zrange key start stop(z就是zset类型,range就是范围的意思,start就是开始,stop就是停止)

    start:为开始索引,包含这个索引的元素

    stop:为屁股索引,包含,其中-1代表的是最后一个元素

    2/获取min和max权值之间(包含)的成员值:

    zrangebyscore key min max(z就是zset类型,range就是范围,by就是通过,score分数(在增加数据的时候,用到了这个键名),合起来翻译就是通过score这个键从权重值min(最小)和max(最大值)这个范围内获取成员值)

    权值值的就是权重值

    3/获取key域(集合)中member的score的权重值:

    zscore key member

    6.3删除元素

    1/删除域(集合)中指定的元素值:

    zrem key member1 member2....

    2/删除集合中权重在指定范围内(min,max)的元素

    zremrangebyscore key min max(这句话的意思和之前解释的没什么差别,只有rem是remover删除的前三个字母,就是通过score查找那个范围内的元素进行删除)

    查看更多命令(估计你也不想查了,但是还是象征性的放一个链接吧,万一哪天脑子一热或者工作需要想查查呢):http://www.redis.cn

    优质文章推荐:
    公众号使用指南
    redis操作命令总结
    前端中那些让你头疼的英文单词
    Flask框架重点知识总结回顾
    项目重点知识点详解
    难点理解&面试题问答
    flask框架中的一些常见问题
    团队开发注意事项
    浅谈密码加密
    Django框架中的英文单词
    Django中数据库的相关操作

    相关文章

      网友评论

          本文标题:redis操作命令总结

          本文链接:https://www.haomeiwen.com/subject/txwljqtx.html