06.19 2、Redis系列——Redis命令(一)字符串命令

Redis的字符串就是一个由字节组成的序列,字符串可以存储3种类型值:字节串(byte string),整数,浮点数;

用户可以通过给定一个任意的数值,对存储着整数或者浮点数的字符串执行自增(increment)或者自减(decrement)操作,在有需要的时候,Redis还会将整数转换成浮点数。整数的取值范围和系统的长整数(long integer)的取值范围相同(在32位系统上,整数就是32位有符号整数,在64位系统上,整数就是64位有符号整数),而浮点数的取值范围和精度则与IEEE754标准的双精度浮点数(double)相同。Redis明确地区分字节串,整数和浮点数的做法是一种优势,比起只能够存储字节串的做法,Redis做法在数据表现方面具有更大的灵活性。

2、Redis系列——Redis命令(一)字符串命令

Redis中的自增命令和自减命令

示例:

2、Redis系列——Redis命令(一)字符串命令

2、Redis系列——Redis命令(一)字符串命令

除了自增操作和自减操作之外,Redis还拥有对字节串的其中一部分内容进行读取或者写入的操作(这些操作也可用于整数或者浮点数)。

2、Redis系列——Redis命令(一)字符串命令

供Redis处理子串和二进制位的命令

再使用SETTANGE或者SETBIT命令对字符串进行写入的时候,如果字符串当前的长度不能满足写入的要求,那么Redis会自动使用空字节(null)来将字符串扩展至所需的长度,然后才执行写入或者更新操作。

在使用GETRANGE读取字符串的是,超出字符串末尾的数据会被视为是空串,而在使用GETBIT读取二进制位串的时候,超出字符串末尾的二进制会被视为是0。

示例:

2、Redis系列——Redis命令(一)字符串命令

对超出字符串长度的二进制位设置时,超出的部分会被填充为空字节,setbit命令会返回二进制位被设置之前的值,在对Redis存储的二进制位进行解释时,Redis存储的二进制位是按照偏移量从高到低排列的。通过将第2个二进制以及第7个二进制位的值设置为1,键的值将变为'!',也就是编码为33的字符。

2、Redis系列——Redis命令(一)字符串命令


分享到:


相關文章: