Redis命令

Redis命令

通用命令

  • keys [pattern] :遍历所有key(生产环境禁用)
  • dbsize :计算key的总数
  • exists key :检查key是否存在
  • del key [key...] :删除指定key-value
  • expire key seconds :设置key的过期时间
  • ttl key :查看key剩余的过期时间
  • persist key :去除key的过期时间
  • type key :返回key的类型

string - 字符串

基本操作

  • get key :获取key对应value
  • set key value :不管key是否存在,都设置key-value
  • setnx key value :key不存在时,才设置key-value
  • set key value xx :key存在时,才设置key-value
  • del key :删除key-value

批量操作

  • mset key1 value1 key2 value2 ... :批量设置key-value
  • mget key1 key2 ... :批量获取key,原子操作

计数操作

  • incr key :key自增1,如果key不存在,自增后get(key)=1
  • decr key :key自减1,如果key不存在,自减后get(key)=-1
  • incrby key k :key自增k,如果key不存在,自增后get(key)=k
  • decrby key k :key自减k,如果key不存在,自减后get(key)=-k

其他操作

  • getset key newvalue :设置key新值并返回旧值
  • append key value :追加value
  • strlen key :返回字符串的长度
  • getrange key start end :获取字符串指定下标所有的值
  • setrange key index value :设置字符串指定下标所有对应的值
  • incrbyfloat key 3.5 :key自增对应的值3.5

hash - 哈希

基本操作

  • hget key field :获取hash key对应field的value
  • hset key field value :设置hash key对应field的value
  • hdel key field :删除hash key对应field的value
  • hexists key field :判断hash key是否有field
  • hlen key :获取hash key的field数量

批量操作

  • hmget key field1 field2 ... :批量获取hash key的一批field对应值
  • hmset key field1 value1 field2 value2 ... :批量设置hash key的一批field value

其他操作

  • hgetall key :返回hash key对应所有的field和value
  • hvals key :返回hash key对应所有的field的value
  • hkeys key :返回hash key对应所有的field

list - 列表(有序、可重复)

基本操作

  • rpush list value1 value2 ... :从列表右端插入值
  • lpush list value1 value2 ... :从列表左端插入值
  • linsert list before|after value newValue :在列表指定位置的前|后插入newValue
  • lpop list :从列表左侧弹出一个item
  • rpop list :从列表右侧弹出一个item
  • lrem list count value :根据count值,从列表中删除所有与value像=相等的项
    (1)count>0,从左到右,删除最多count个与value相等的项;
    (2)count<0,从右到左,删除最多Math.abs(count)个与value相等的项;
    (3)count=0,删除所有与value相等的项
  • ltrim list start end :按照索引范围裁剪列表
  • lrange list start end :获取列表指定索引范围所有item(包含end)
  • lindex list index :获取列表指定索引的item
  • llen list :获取列表长度
  • lset list index newValue :设置列表指定索引的值为newValue

阻塞操作

  • blpop list timeout :lpop阻塞版本,timeout是阻塞超时时间,timeout=0为永不阻塞
  • brpop list timeout :rpop阻塞版本,timeout是阻塞超时时间,timeout=0为永不阻塞

set - 集合(无序、无重复)

基本操作

  • sadd set element :向集合添加element(如果element已存在,则添加失败)
  • srem set element :将集合中的element移除
  • scard set :计算集合大小
  • sismember set element :判断element是否在集合中
  • srandmember set count :从集合中随机挑count个元素
  • spop set :从集合中随机弹出一个元素
  • smembers set :获取集合所有元素

集合操作

  • sdiff set1 set2 :差集
  • sinter set1 set2 :交集
  • sunion set1 set2 :并集
  • sdiffstore destkey set1 set2 :将set1和set2的差集结果保存在destkey中
  • sinter destkey set1 set2 :将set1和set2的交集结果保存在destkey中
  • sunion destkey set1 set2 :将set1和set2的并集结果保存在destkey中

zset - 有序集合

基本操作

  • zadd zset score element :向集合添加score和element
  • zrem zset element :将集合中的element移除
  • zscore zset element :返回element的分数
  • zincrby zset increScore element :增加或减少element的分数
  • zcard zset :计算集合大小
  • zrank zset element :返回element在集合中的排名

范围操作

  • zrange zset start end [WITHSCORES] :返回指定索引范围内的升序元素[分值]
  • zrangebyscore zset minScore maxScore [WITHSCORES] :返回指定分数范围内的升序元素[分值]
  • zcount zset minScore maxScore :返回有序集合内在指定分数范围内的个数
  • zremrangebyrank zset start end :删除指定排名内的升序元素
  • zremrangebyscore zset minScore maxScore :删除指定分数内的升序元素

集合操作

  • zinter destkey zset1 zset2 :将zset1和zset2的交集结果保存在destkey中
  • zunion destkey zset1 zset2 :将zset1和zset2的并集结果保存在destkey中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值