redis命令大全

redis数据结构

 string
 list 
 set
 sort set
 hash

redis命令大全

  1. 通用命令

    命令功能时间复杂度
    keys *通过模式匹配获得符合的key,容易阻塞redis线程,慎用O(N)
    exists key验证key是否存在(0表示不存在,1表示存在)O(1)
    type key查看value的类型O(1)
    expire key设置key的过期时间,单位为sO(1)
    pexpire key设置key的过期时间,单位为msO(1)
    expireat key设置key在什么时间过期,value为未来时刻的一个时间戳,精确到mO(1)
    pexpireat key设置key在什么时间过期,value为未来时刻的一个时间戳,精确到msO(1)
    ttl key查看key还有多久过期(-1表示永远不过期),单位为mO(1)
    pttl key查看key还有多久过期(-1表示永远不过期),单位为msO(1)
    del key删除keyO(1)
  2. string

    常用命令:

    命令功能时间复杂度
    set key value不管key是否存在,都设置keyO(1)
    setnx key value当key不存在的时候设置keyO(1)
    setex key value seconds设置key的同时设置过期时间,单位为mO(1)
    set key value xx当key存在的时候更新keyO(1)
    get key获取key的valueO(1)
    getset key value获取key的value的同时设置新的valueO(1)
    incr key当value为整型时,每次递增1O(1)
    decr key当value为整形时,每次递减1O(1)

    高级命令:

    命令功能时间复杂度
    mset key value […key value]一次设置多个keyO(N)
    mget key […key]一次获取获得valueO(N)
    incrby key count当value为整形时,每次递增countO(1)
    decrby key count当value为整形时,每次递减countO(1)
    incrbyfloat key count当value为数值时,每次递增countO(1)
    append key appstr拼接字符串O(1)
    strlen key获取字符串的长度O(1)
    getrange key start end获取指定范围的字符O(1)
    setrange key offset str在指定位置设置字符O(1)
  3. list

    常用命令:

    命令功能时间复杂度
    lpush key value […value]将一个或者多个值插入列表头部O(1)
    lpop key从列表头部弹出一个元素O(1)
    rpush key value […value]将一个或者多个值插入列表尾部O(1)
    rpop key从列表尾部弹出一个元素O(1)
    blpop key以阻塞模式从列表头部弹出一个元素O(1)
    brpop key以阻塞模式从列表尾部弹出一个元素O(1)
    lrem key count value从列表中删除count个value,count正负代表了方向O(N)
    lrange key start end取出从start到end的所有元素,start和end可以为负O(N)
    ltrim key start end将start到end范围之外的元素删除O(N)
    llen key查看列表长度O(1)

    高级命令:

    命令功能时间复杂度
    linsert key before/after oldvalue newvalue在指定元素前/后插入元素O(N)
    lindex key index获取指定位置元素O(N)
    lset key oldvalue newvalue将列表中指定元素替换O(N)
  4. set

    常用命令:

    命令功能时间复杂度
    sadd key value […value]向集合中添加元素O(1)
    sismember key value查看元素是否在集合中O(1)
    smembers key获取集合所有元素,不改变集合内部结构O(N)
    srandmember key count从集合中随机弹出一个元素,不改变集合内部结构O(N)
    spop key从集合中弹出一个元素,改变集合内部结构O(N)
    srem key value从集合中删除指定元素O(1)
    scard key获取集合长度O(1)

    高级命令:

    命令功能时间复杂度
    sinter source1 source2求两个集合的交集O(N)
    sinterstore source1 source2 dest将两个集合的交集存储到目标集合O(N)
    sdiff source1 source2求source1-source2集合的差集O(N)
    sdiff source1 source2 dest将 source1-source2集合的差集存储到目标集合O(N)
    sunion source1 source2将两个集合的并集O(N)
    sunion source1 source2 dest将两个集合的并集存储到目标集合O(N)
  5. sort set
    常用命令:

    命令功能时间复杂度
    zadd key score value [… score value]向有序集合添加元素O(M(logN))
    zscore key value获取指定元素的scoreO(1)
    zcard key获取元素数量O(1)
    zrem key value […value]删除指定元素O(1)
    zincrby key incrScore element对指定元素加分数O(1)
    zrange key start end [withscores]获取升序排序的第start到end的元素O(log(N)+M)
    zrevrange key start end [withscores]获取降序排序的第start到end的元素O(log(N)+M)
    zrangebyscore key minscore maxscore获取指定分数范围内的元素O(log(N)+M)
    zremrangebyscore key minscore maxscore删除指定分数范围内的所有元素O(log(N)+M)
    zcount key minscore maxscore获取指定范围元素的数量O(log(N)+M)
    zrank key value获取升序排序指定元素的排名O(log(N))
    zrevrank key value获取降序排序指定元素的排名O(log(N))
    zremrangebyrank key start end根据排名删除元素O(log(N)+M)

    高级命令:

    命令功能时间复杂度
    zinterstore source1 source2 dest将两个集合的交集存储到目标集合O(log(N)+M)
    zunion source1 source2 dest将两个集合的并集存储到目标集合O(log(N)+M)
  6. hash

    常用命令:

    命令功能时间复杂度
    hset key field value设置field和valueO(1)
    hmset key field value […field value]批量设置field和valueO(1)
    hget key field获取valueO(1)
    hmget key field […field]批量获取fieldO(1)
    hgetall key获取所有的field和valueO(N)
    hkeys key获取所有的fieldO(N)
    hvals key获取所有的valueO(N)
    hexists key field判断是否拥有fieldO(1)
    hincrby key field count对field自增countO(1)
    hlen key获取key的field的数量O(1)
    hdel key field删除指定的fieldO(1)

更多问题可以加公众号:代码小栈,期待为您解决更多问题
代码小栈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值