Redis的哈希数据类型存储的是一个string类型的field和value的映射表,hash适合存放对象;
Redis 中每个 hash 可以存储 232 - 1 键值对(4294967295,40多亿)。
1、HGET key field value 用于给哈希表中的字段赋值;
如果哈希表不存在,一个新的哈希表被创建并进行Hset操作;
新建字段并且设置成功,返回1;如果哈希表中的字段已存在,新的值会覆盖旧的值,返回0;
2、HGET key field 用于获取指定哈希表中指定字段的值;
如果hash表不存在或者字段不存在,返回nil;
3、HDEL key field [fields] 删除指定哈希中的一个或者多个字段;
返回删除成功的数量;
4、HEXISTS key field 用于查看哈希表中指定的字段是否存在;
存在返回1,如果指定的key或者字段不存在返回0;
5、HGETALL key 用于返回哈希中所有的字段和值;
6、HKEYS key 用于返回哈希中所有的字段名;
7、HINCRBY key field increment 用于给哈希表中指定的整数字段加上增量;
增量必须是整数可以是负整数,返回该字段加上增量之后的值;
如果哈希中的key不存在,会新建一个key并且把增量赋给指定的字段;
如果字段不存在,会新建一个字段把增量赋给指定的字段;
如果给哈希中string类型的字段添加增量,会返回错误提醒;
8、HINCRBYFLOAT key field increment 用于给哈希表中指定的整数字段加上浮点数增量;
增量可以是整数也可以是浮点数,可以是正数或者负数,返回该字段加上增量之后的值;
如果哈希中的key不存在,会新建一个key并且把增量赋给指定的字段;
如果字段不存在,会新建一个字段把增量赋给指定的字段;
如果给哈希中string类型的字段添加增量,会返回错误提醒;
9、HLEN key 返回哈希表指定key中字段的数量
当key不存在时,返回0;
10、HMGET key field [field2] 获取哈希表中指定key的一个字段或者多个字段的值;
当key不存在或者字段不存在时,返回nil;
11、HMSET key field value [field2 value2] 给哈希表中的一个字段或多个字段赋值;
当key中的字段已存在时,会覆盖旧值;
当key不存在时,执行HSET操作;
成功返回OK;
12、HSETNX key field value 用于为哈希表中不存在的数据赋值;
如果哈希表不存在,一个新的哈希表被创建并执行HSET操作。
如果字段已经存在,操作无效,
操作成功返回1,操作无效返回0。
13、HVALS key 返回哈希表中所有filed的值;
一个包含哈希表中所有域(field)值的列表。当 key 不存在时,返回一个空表。