Redis相关指令

2021/9/15 2:06:56

本文主要是介绍Redis相关指令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Redis数据模型

 

 

  • 键Key
    • Redis key 值是二进制安全的,这意味着可以用任何二进制序列作为key值,从形如”foo”的简单字符串到一个JPEG文件的内容都可以。空字符串也是有效key值
    • Key取值原则
      • 键值不需要太长,消耗内存,且在数据中查找这类键值的计算成本较高
      • 键值不宜过短,可读性较差
  • String

 

    • 字符串是一种最基本的Redis值类型。Redis字符串是二进制安全的,这意味着一个Redis字符串能包含任意类型的数据
      • 例如: 一张JPEG格式的图片或者一个序列化的Ruby对象
    • 一个字符串类型的值最多能存储512M字节的内容

 

  • 设置字符串值
    • SET key value [EX seconds] [PX milliseconds] [NX|XX]
    • EX 设置过期时间,秒,等同于SETEX key seconds value
    • PX 设置过期时间,毫秒,等同于PSETEX key milliseconds value
    • NX 键不存在,才能设置,等同于SETNX key value
    • XX 键存在时,才能设置
  • 设置多个键的字符串值
    •  MSET key value [key value ...]
  • 键不存在时,设置字符串值
    • MSETNX key value [key value ...]
    • 注意:这是原子操作

 

  • 过期
    • Redis中可以给Key设置一个生存时间(秒或毫秒),当达到这个时长后,这些键值将会被自动删除
  • 设置多少秒或者毫秒后过期
    • EXPIRE key seconds
    • PEXPIRE key milliseconds
  • 设置在指定Unix时间戳过期
    • EXPIREAT key timestamp
    • PEXPIREAT key milliseconds-timestamp
  • 删除过期
    • PERSIST key

 

  • 生存时间
    • Time To Live,Key的剩余生存时间
  • 查看剩余生存时间
    • TTL key
    • PTTL key
    • key存在但没有设置TTL,返回-1
    • key存在,但还在生存期内,返回剩余的秒或者毫秒
    • key曾经存在,但已经消亡,返回-2(2.8版本之前返回-1)

 

  • 查找键  
    • KEYS pattern
  • pattern取值
    • * 任意长度字符
    • ? 任意一个字符
    • [] 字符集合,表示可以是集合中的任意一个

 

  • 获取值
    •  GET key
  • 获取多个给定的键的值
    • MGET key [key ...]
  • 返回旧值并设置新值
    • GETSET key value
    • 如果键不存在,就创建并赋值
  • 字符串长度
    • STRLEN key
  • 追加字符串
    • APPEND key value
    • 如果键存在就追加;如果不存在就等同于SET key value
  • 获取子字符串
    • GETRANGE key start end
    • 索引值从0开始,负数表示从字符串右边向左数起,-1表示最有一个字符
  • 覆盖字符串  
    • SETRANGE key offset value

 

  • 位图bitmap
    • 位图不是真正的数据类型,它是定义在字符串类型中
    • 一个字符串类型的值最多能存储512M字节的内容
    • 位上限:2^(9+10+10+3)=2^32b

 

  • 设置某一位上的值
    • SETBIT key offset value
    • offset偏移量,从0开始
    • value不写,默认是0
  • 获取某一位上的值
    • GETBIT key offset
  • 返回指定值0或者1在指定区间上第一次出现的位置
    • BITPOS key bit [start] [end]
  • 统计指定位区间上值为1的个数
    • BITCOUNT key [start] [end]
    • 从左向右从0开始,从右向左从-1开始,注意官方start、end是位,测试后是字节
    • BITCOUNT testkey 0 0表示从索引为0个字节到索引为0个字节,就是第一个字节的统计
    • BITCOUNT testkey 0 -1等同于BITCOUNT testkey 、
    • 最常用的就是 BITCOUNT testkey

 

 



这篇关于Redis相关指令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程