学习自:Redis 的五种数据类型及其底层原理_redis的五种数据类型_ZJE_ANDY的博客-CSDN博客
Redis 的五种基本数据类型_redis的五种数据类型_喵先森爱吃鱼的博客-CSDN博客
Redis是K-V结构的数据库。
Redis有5种常用数据类型(这里的数据类型,都是针对K-V对中的V的类型):
- String
- List
- Set
- Hash(就是Python中的dict,{name:"Jack",age:21})
- Zset(有序集合)
1、String
String是Redis最基本的数据类型,一个Key对应一个Value。Redis的String可以表示任何数据,例如jpg图像或者序列化的对象,String最大能存储512MB。
根据字符串格式的不同,又可以分为3类:
- string:普通字符串
- int:整数类型,可以做自增自减操作
- float:浮点类型,可以做自增自减操作
不管哪种格式,在底层都是以字节数组的形式存储,只是编码方式不同。
值类型 |
值 |
string | hello world |
int | 10 |
float | 92.5 |
命令(不区分大小写)
命令 |
用法 |
说明 |
append | append K V |
不存在K时,先创建V 存在K时,在V后追加 |
strlen | strlen K | K对应的V的长度 |
set | set K V | 添加一个K-V对 |
get | get K | 获取K对应的V |
getset | getset K V | 获取K的原V,并将其设置为新V |
mset | mset K1 V1 K2 V2 | 一次增加多个K-V |
mget | mget K1 K2 ... | 一次获取多个K的V |
incr | incr K | K对应的V(整型)自增1 |
incrby | incrby K n | K对应的V(整型)自增n |
incrbyfloat | incrbyfloat K n | K对应的V(浮点)自增n |
decr | decr K | 自减1 |
decrby | decrby K n | 自减n |
sertange | setrange K start V | 从start开始,用新V替换原V的子串 |
getrange | getrange K start end | 取K对应的V的子串(start与end可以是负数,-1表示最后一个字符,-2代表第二个……) |
setex | setex K t V | 设置过期时间t秒,过期时间前K的值为V,超过t后K失效 |
psetex | psetex K t V | 设置过期时间t毫秒,过期时间前K的值为V,超过t后K失效 |
strlen:计算长度
append:在V后追加,如果K-V不存在,则相当于新建
decr:自减,如果K不存在则V置0
decrby:指定步长的自减
getrange:获取子串
getset:获取K的原V,设置新V
incr、incrby:整型自增
decr、decrby:整型自减
incrbyfloat:浮点自增
mget、mset:一次存取多个
setex:设置过期时间(秒)
psetex:设置过期时间(毫秒)
setrange:范围替换
如果K的原V长度小于偏移量,则不足的地方用0补齐
标签:自增,string,过期,redis,数据类型,自减,类型,Redis,String From: https://www.cnblogs.com/ShineLeBlog/p/17628159.html