Redis(3):Redis数据类型

Redis采用字典结构以键值对(key-value)的形式存储数据的

散列类型的键值(value)也是字典类型 字段和字段值的映射 但字段值只能是字符串 不能是别的数据类型(散列类型不能嵌套)

一个散列类型的的键(key)可以包含至多2的32次方-1个字段

Redis(3):Redis数据类型

散列类型适合存储对象:使用对象类别和ID构成键名 字段表示对象的属性 字段值表示对象的属性值

命令:

hset key field value 字段赋值

hget key field 获取字段的值

hmset key field value [field value ...] 多个字段赋值

hmget key field [field ...] 获取多个字段的值

Redis(3):Redis数据类型

hset不区分插入还是更新 插入 hset返回1 更新hset返回0 不存在 自动创建


hgetall key:获取键中的说有字段的字段值

Redis(3):Redis数据类型

hexists key field:判断字段是否存在 存在返回1 不存在返回0 键不存在也返回0

Redis(3):Redis数据类型

hsetnx key field value:字段不存在才赋值 (原子操作 不用担心竞态条件)nx:if Not eXists

Redis(3):Redis数据类型

hincrby key field increment :给字段值增加指定的整数 如果key不存在  自动给field赋值为0 然后再增加

    返回时field增加后的值

Redis(3):Redis数据类型

hdel key field [field ...] 删除一个或多个字段 返回被删除的字段个数

Redis(3):Redis数据类型

hkeys key 获取字段名

hvals key 获取字段值

hlen key 获取字段数量

Redis(3):Redis数据类型


列表类型(list): 存储一个有序的字符串列表 常用操作向列表两端添加元素或获得列表的某一个字段

Redis(3):Redis数据类型

lpush key value [value ...] 向列表左边增加元素 返回增加后列表的长度

rpush key value [value ...]  右边

Redis(3):Redis数据类型

lpop key 列表左边弹出一个元素(将列表左边的元素从列表中删除 返回被移除的元素值)

rpop key 右边


llen key 获取列表中元素的个数

lrange key start stop 获取列表的片段 (包含stop的值)

1.start比stop的位置靠后 返回空列表

2. stop大于列表的长度 返回到最右边的值


lrem key count value 

Redis(3):Redis数据类型

集合类型:

Redis(3):Redis数据类型

Redis(3):Redis数据类型

有序集合

Redis(3):Redis数据类型

Redis(3):Redis数据类型