推荐链接:
总结——》【Java】
总结——》【Mysql】
总结——》【Redis】
总结——》【Spring】
总结——》【SpringBoot】
总结——》【MyBatis、MyBatis-Plus】
相关链接:
Redis——》数据类型
Redis——》数据类型:string(字符串)
Redis——》数据类型:hash(哈希)
Redis——》数据类型:list(列表)
Redis——》数据类型:set(集合)
Redis——》数据类型:zset(有序集合)
Redis——》数据类型:bitmap
在Redis中,哈希类型是指v(值)本身又是一个键值对(k-v)结构
缓存用户信息等
字典、压缩列表
注意:
如果开发使用hgetall,哈希元素比较多的话,可能导致Redis阻塞,可以使用hscan。
如果只是获取部分field,建议使用hmget。
语法 | 示例 | 描述 |
---|---|---|
hset key field value | hset k1 name xiaoxian | 设置field的值为value |
hsetnx key field value | hset k1 age 18 | 只有field不存在时,才设置field的值为value |
hmset key field1 value1 [field2 value2 ] | hmset k1 address shanghai sex female | 同时设置多个 field-value |
语法 | 示例 | 描述 |
---|---|---|
hdel key field1 [field2] | hdel k1 address sex | 删除一个或多个field |
同增
语法 | 示例 | 描述 |
---|---|---|
hget key field | hget k1 name | 获取指定field的值 |
hmget key field1 [field2] | hget k1 name age | 获取所有指定field的值 |
hkeys key | hkeys k1 | 获取所有field |
hvals key | hvals k1 | 获取所有value |
hgetall key | hgetall k1 | 获取所有field-value |
hlen key | hlen k1 | 获取field的数量 |
hexists key field | hexists k1 name | 查看指定field是否存在 |
语法 | 示例 | 描述 |
---|---|---|
hincrby key field increment | hincrby k1 age 1 | 指定field的整数值加上增量 increment |
hincrbyfload key field increment | hincrby k1 height 0.5 | 指定field的的浮点数值加上增量 increment |
hset k1 name zzl
hmset k1 age 18 address bj
hget k1 name
hmget k1 name age
hkeys k1
hvals k1
hgetall k1
hincreby k1 age 1
hincreby k1 age -1
hincrebyfloat k1 height 0.5
hincrebyfloat k1 height -1