Redis学习笔记(一)Strings

Strings类型是Redis中最基本的一种类型。Redis中的Strings类型是二进制安全的,这意味着Redis String可以存储任何类型的数据。比如,JPEG图像、序列化的Ruby对象等。一个String类型最大可以存储的数据长度高达512MB。

我们知道Redis是一个Key-Value存储器,其Key(键)是String类型,所以,当我们使用Stirng类型作为Value(值)时,其实就是将一个String映射到另一个String上。

下面列举一些Strings类型常用的命令,包括Strings特有的以及通用的命令。

1.SET/GET

SET命令,可以用来将一个key映射到一个value上。如果key已经有映射的value的话,原value将会被覆盖。并且,在这之前与key关联的存活时间将会失效。

(1)SET命令格式

注:上述四个选项分别等价于以下四个命令:SETEX, PSETEX, SETNX, SETEX。不过,Redis组织表示,在将来的某个版本中可能会将其移除。所以,不建议使用。

(2)GET命令格式

该命令用来获取key映射的值。如果key不存在映射值,返回nil;如果key映射的不是String类型,则返回一个错误,因为GET只处理String类型的值。

(3)示例:

2.INCR/DECR

(1)INCR命令格式

该命令对key映射的value值进行自增操作(值加1)。
注:这是一个String操作,因为Redis没有一个专门的整数类型。

(2)DECR命令格式

对key映射的value值进行自减操作(值减1)。

(3)示例

3.INCRBY/DECRBY

这两个命令与INCR/DECR类似,不同的是增加/减少的大小可以指定(不一定是1)。

(1)命令格式

(2)示例

4.GETSET

该命令会将key映射到一个新的value,同时会打印出旧的value值。

(1)命令格式

(2)示例

5.MSET/MGET

这两个命令一次可以设置/获取多个key映射的value。

(1)命令格式

(2)示例

6.EXISTS/DEL

(1)EXISTS

判断单个key时:如果key存在,返回1;不存在返回0。判断多个key时:存在时返回值会叠加。有如下示例:

(2)DEL

删除key,如果key不存在,则忽略。返回被删除key的个数。有如下示例:

7.TYPE

(1)命令格式

返回key所映射的value的类型。返回值一般有:string, list, set, zset, hash;若key不存在则返回none。

(2)示例

8.EXPIRE/PERSIST

EXPIRE命令用来设置一个key的生存时间,超时之后key将自动被删除。

PERSIST命令可以用来清除key的生存时间,使之成为一个持久的key。除此之外,重置key也可以清空key的生存时间。

(1)命令格式

(2)示例

9.其他

(1)APPEND key value

在key映射值的尾部追加value,有如下示例:

(2)SETBIT/GETBIT/BITCOUNT

1)SETBIT/GETBIT

SETBIT命令用来设置在offset偏移位上的bit值(0或1);GETBIT命令获取offset上的bit值,示例:

2)BITCOUNT

BITCOUNT用来计算value值的比特位上的累加值,有如下示例:

(3)SETRANGE/GETRANGE

分别用来设置、获取一定范围内的值,有如下示例:

(4)STRLEN

获取key映射的value的长度:

 

参考:
https://redis.io/topics/data-types-intro
https://redis.io/commands

发表评论

电子邮件地址不会被公开。 必填项已用*标注