散列类型适合存储对象:使用对象类别和ID构成键名,使用字段类别和ID构成键名,使用字段表示对象的属性,而字段值则存储属性值。
1、赋值与取值
HSET key field value
HGET key field
HMSET key field value [field value...]
HMGET key field [field...]
HGETALL key
HSET命令用来给字段赋值,HGET命令用来获得字段的值。
redis>HSET car price 500
redis>HSET car name BMW
redis>HGET car name
HSET命令的方便之处在于不区分插入和更新操作。当执行的是插入操作时(即之前字段不存在)HSET命令会返回1,当执行的是更新操作时(即之前字段已经存在)HSET命令会返回0。更进一步,当键本身不存在时,HSET命令还会自动建立它。
HMSET key field1 value1 field2 value2
HMGET命令可以同时获得多个字段的值:
redis>HMGET car price name
想获取键中所有字段和字段值却不知道键中有哪些字段时,应该使用HGETALL命令
redis:HGETALL car
2、判断字段是否存在
HEXISTS key field
如果存在返回1,否则在返回0(如果键不存在也会返回0)
3、当字段不存在时赋值
HSETNX key field value
HSETNX命令与HSET命令类似,区别在于如果字段已经存在,HSETNX命令将不执行任何操作。
4、增加数字
HINCRBY key field increment
redis>HINCRBY person score 60
5、删除字段
HDEL key field [field...]
返回值是被删除的字段个数
redis>HDEL car price
6、只获取字段名或字段值
HKEYS key
HVALS key
7、获得字段数量
HLEN key