Redis命令详解:Hashs
2023-09-25 22:04:44
在Redis中,Hash是一种以String类型的field、value的映射表,因此,它非常适合存储对象。在本篇文章中,我们将一一介绍与Hash相关的命令。
HDEL命令
HDEL命令用于删除指定key的指定的一个或多个field。如果指定的field不存在于指定的key中则会被忽略,如果指定的key不存在,会当做空Hash来处理。
语法 :
HDEL key field [field ...]
参数 :
key
:要操作的Hash的key。field
:要删除的field。
返回值 :
- 被删除的field的个数。
HGET命令
HGET命令用于获取指定key的指定field的值。如果指定的field不存在于指定的key中则会返回nil,如果指定的key不存在,会当做空Hash来处理。
语法 :
HGET key field
参数 :
key
:要操作的Hash的key。field
:要获取值的field。
返回值 :
- 指定field的值。
HGETALL命令
HGETALL命令用于获取指定key的所有的field和value。如果指定的key不存在,会当做空Hash来处理。
语法 :
HGETALL key
参数 :
key
:要操作的Hash的key。
返回值 :
- 一个包含所有field和value的数组。
HSET命令
HSET命令用于设置指定key的指定field的值。如果指定的key不存在,则会创建一个新的Hash。
语法 :
HSET key field value
参数 :
key
:要操作的Hash的key。field
:要设置值的field。value
:要设置的值。
返回值 :
- 1,如果field是Hash中的一个新field。
- 0,如果field已经是Hash中的一个存在的field,且它的值已被更新。
HSETNX命令
HSETNX命令用于设置指定key的指定field的值,只有当该field不存在时才会设置成功。如果指定的key不存在,则会创建一个新的Hash。
语法 :
HSETNX key field value
参数 :
key
:要操作的Hash的key。field
:要设置值的field。value
:要设置的值。
返回值 :
- 1,如果field是Hash中的一个新field,且设置成功。
- 0,如果field已经是Hash中的一个存在的field。
HINCRBY命令
HINCRBY命令用于对指定key的指定field的值进行增量操作。如果指定的field不存在于指定的key中则会被创建,如果指定的key不存在,会当做空Hash来处理。
语法 :
HINCRBY key field increment
参数 :
key
:要操作的Hash的key。field
:要进行增量操作的field。increment
:要进行增量的值。
返回值 :
- 增量后的field的值。
HLEN命令
HLEN命令用于获取指定key的Hash的field的个数。如果指定的key不存在,会当做空Hash来处理。
语法 :
HLEN key
参数 :
key
:要操作的Hash的key。
返回值 :
- Hash的field的个数。
HMGET命令
HMGET命令用于获取指定key的指定多个field的值。如果指定的field不存在于指定的key中则会返回nil,如果指定的key不存在,会当做空Hash来处理。
语法 :
HMGET key field [field ...]
参数 :
key
:要操作的Hash的key。field
:要获取值的field。
返回值 :
- 一个包含所有field的值的数组。
HSTRLEN命令
HSTRLEN命令用于获取指定key的指定field的值的长度。如果指定的field不存在于指定的key中则会返回0,如果指定的key不存在,会当做空Hash来处理。
语法 :
HSTRLEN key field
参数 :
key
:要操作的Hash的key。field
:要获取值的field。
返回值 :
- 指定field的值的长度。