redis 常用命令

key 操作

  • exists key 检查key是否存在,若key存在返回1,否则返回0
  • scan cursor [MATCH pattern] [COUNT count], cursor - 游标。 pattern - 匹配的模式。 count - 指定从数据集里返回多少元素,默认值为 10
    • 例子1: scan 0 a* 10
    • 例子2: scan 0 match key*
    • 例子3: scan 0 match key* count 10
  • keys pattern 查找所有符合给定模式的key,通常用于查找key,线上查询禁止使用
  • expire key seconds 为key设置超时时间(单位:秒),当key过期时,会被系统自动删除
  • ttl key 以秒为单位返回key的剩余生存时间(time to live),当key不存在时返回-2,当key存在未设置生存时间时返回-1
  • pttl key 这个命令和ttl类似,它以毫秒为单位返回key的剩余生存时间
  • move key db 将key移动到指定数据库中
  • type key 返回key存储的值的类型,返回none(不存在)、string(字符串)、list(列表)、set(集合)、zset(有序集合)、hash(哈希表)

string

  • get key 返回key的值,若key不存在则返回nil,若key存储的值不是字符串则返回错误
  • mget key [key...] 依次返回一个或多个key的值,若key不存在返回nil,若key存在但不是字符串返回nil
  • strlen key 返回key所存储的字符串的长度,当key不存在时返回0,当key存在但不是字符串时返回错误
  • append key value 将指定的值追加到key末尾,若key不存在,则创建并赋值,返回追加后的字符串长度
  • set key value [ex seconds] [px milliseconds] [nx|xx] 为key设置值,ex和px均为设置过期时间只不过单位不同,nx表示只有key不存在时才进行操作,xx表示只有key存在时才进行操作
  • setex key seconds value 设置带生存时间的key的值,以秒为单位
  • setnx key value 为key设置值,若key已存在则不进行任何操作
  • mset key value [key value...] 为一组或多组key设置值,该操作为原子操作,要么一组都设置成功,要么一组都设置失败
  • msetnx key value [key value...] 与mset不同的是msetnx中的key必须是不存在的,若有一个已存在则会整体失败

list

  • LPUSH key value [value ...] //将一个或多个值value插入到key列表的表头(最左边)
  • RPUSH key value [value ...] //将一个或多个值value插入到key列表的表尾(最右边)
  • LPOP key //移除并返回key列表的头元素
  • RPOP key //移除并返回key列表的尾元素
  • LRANGE key start stop //返回列表key中指定区间内的元素,区间以偏移量start和stop指定
  • BLPOP key [key ...] timeout //从key列表表头弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,一直阻塞等待
  • BRPOP key [key ...] timeout //从key列表表尾弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,一直阻塞等待

hash

  • hgetall key 获取hash表中所有field的值
  • hexists key field 判断hash表中指定field是否存在,返回1;若key或field不存在则返回0
  • hget key field 获取hash表中指定field的值,key或field不存在时返回nil
  • hmget key field[field...] 获取hash表中多个指定field的值,若key不存在返回空,若field不存在返回nil
  • hkeys key 返回hash表中的所有field,若key不存在返回空
  • hvals key 返回hash表中的所有val,若key不存在返回空
  • hdel key field[field...] 删除hash表中指定field,若key或field不存在则会忽略
  • hset key field value 将field-value设置到hash表中,若key不存在会新建hash表再赋值,若field已存在则会覆盖现有值
  • hsetnx key field value 和hset类似,但是hsetnx要求field不存在才能进行此操作,否则会返回0

set

  • smembers key 列出集合key中的所有成员
  • scard key 返回集合key中元素的个数
  • sdiff key[key...] 获取集合的差集,若key为1个则返回集合的全部成员
  • sunion key[key...] 返回集合的并集,不存在的key会被当做空集处理
  • spop key 移除并返回集合中的一个随机元素,当key不存在时返回NULL
  • sismember key member 判断member在key中是否已存在返回0或1
  • sadd key member[member...] 将一个或多个member元素加入到集合key中,若member已存在那么会忽略此元素
  • smove source destination member 将元素member从source移动到destination;若member在destination中已存在只会删除source中的数据,若source或member不存在会返回0,若destination不存在则会创建后再进行操作
  • srem key member[member] 移除key中的一个或多个member元素,不存在的member会被忽略

zset

  • zrange key start stop [WITHSCORES] 通过索引区间返回有序集合指定区间内的成员
  • zrangebyscore key min max [WITHSCORES] [LIMIT] 通过分数返回有序集合指定区间内的成员
  • zscore key member 返回有序集中,成员的分数值
  • zcard key 获取有序集合的成员数
  • zcount key min max 计算在有序集合中指定区间分数的成员数
  • zrank key member 返回有序集合中指定成员的索引
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容