Hash基本操作
新增、修改
hset key field value
查询
hget key field // 查询key下的对应field的value值
hgetall key // key下所有field以及value值
hexists key field // Hash表中是否存在指定字段
删除
hdel key field // 删除key下的field(可删除多个field)
Hash扩展操作
获取哈希表中所有的字段名或字段值(类似于查询对象的所有属性和所有属性值)
hkeys key // 获取哈希表中所有的field
hvals key // 获取哈希表中所有的value
修改属性中的值
hincrby key field increment // 使key下field属性中value值+increment
hincrbyfloat key field increment // 使key下field属性中value值+increment(小数)
hdecrby key field increment // 使key下field属性中value值-increment
hdecrbyfloat key field increment // 使key下field属性中value值-increment(小数)
查询是否有Hash field值
hsetnx key field value // 使key下field是否有值,如果有值才能使用
Hash使用注意事项
- hash类型使用十分像对象的存储形式,可以灵活增添删除属性,但是hash的设计初衷并不是用来封装数据为对象的,不可滥用
- hgetall操作可以获取全部属性,如果field很多,遍历数据field会很慢,成为整个系统的性能瓶颈