Redis 的 HGETALL 命令用于返回 哈希表 KEY 中,所有的域和值。在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。
192.168.98.70:6379> HGETALL KEY
参数 | 描述 |
---|---|
KEY | 要获取的 HASH 的键。 |
以列表形式返回哈希表的域和域的值。若 KEY 不存在,返回空列表。
O(N), N 为哈希表的大小。
>= 2.0.0
当 KEY 存在时,返回键值对列表
192.168.98.70:6379> HSET haicoder.net name "haicoder" (integer) 1 192.168.98.70:6379> HSET haicoder.net module "Database" (integer) 1 192.168.98.70:6379> HSET haicoder.net category "Redis" (integer) 1 192.168.98.70:6379> HGETALL haicoder.net 1) "name" 2) "haicoder" 3) "module" 4) "Database" 5) "category" 6) "Redis" 192.168.98.70:6379> DEL haicoder.net (integer) 1
我们首先,使用 HSET 命令,设置键 haicoder.net 的 name 字段。使用 HSET 命令,设置键 haicoder.net 的 module 字段。使用 HSET 命令,设置键 haicoder.net 的 category 字段。
接着,我们使用 HGETALL 命令,获取键 haicoder 的所有字段名和对应的值的列表,即 name 字段的值为 haicoder, module 字段的值为 Database, category 字段的值为 Redis。
当 KEY 不存在时,返回空列表
# KEY 不存在
192.168.98.70:6379> EXISTS haicoder.net
(integer) 0
192.168.98.70:6379> HGETALL haicoder.net
(empty list or set)
我们首先,使用 EXISTS 命令,判断键 haicoder.net 不存在。接着,使用 HGETALL 命令,获取键 haicoder.net 的所有字段的值,返回空列表。
Redis 的 HGETALL 命令用于返回哈希表 KEY 中,所有的域和值。Redis HGETALL 命令语法:
192.168.98.70:6379> HGETALL KEY