散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他的数据类型。

一个散列类型键可以包含至多2^32 -1个字段。

命令

  1. 赋值

    HSET key field value
    
    > HSET car price 500
    (integer) 1
    > HSET car name BMW
    (integer) 1

    HSET 命令不区分插入和更新操作,当执行插入操作时HSET命令返回1,当执行更新操作时HSET命令返回0。

  2. 取值

    HGET key field
    
    >HGET car name
    "BMW"
  3. 同时设置多个值

    HMSET key field value [field value]
  4. 同时获取多个值

    HMGET key field [field ...]
    
    > HMGET car price name
    1) "500"
    2) "BMW"
  5. 获取所有的字段和字段值

    HGETALL key
    
    > HGETALL car
    1) "price"
    2) "500"
    3) "name"
    4) "BMW"
  6. 判断字段是否存在

    HEXISTS key field
    
    > HEXISTS car model
    (integer) 0
    > HSET car model C200
    (integer) 1
    > HEXISTS car model
    (integer) 1
  7. 字段不存时赋值

    HSETNX key field value

    与HSET命令类似,不存在返回1,存在返回0。

  8. 增加数字

    HINCRBY key field increment
    
    > HINCRBY person score 60
    (integer) 60
  9. 删除字段

    HDEL key field [field ...]
    
    > HDEL car price
    (integer) 1
    > HDEL car price
    (integer) 0
  10. 只获取字段名

    HKEYS key
    
    > HKEYS car
    1) "name"
    2) "model"
  11. 只获取字段值

    HVALS key
    
    > HVALS key
    1) "BMW"
    2) "C200"
  12. 获得字段数量

    HLEN key
    
    > HLEN car
    (integer) 2
05-23 17:06