1. HDEL key field [field ...]
起始版本:2.0.0
时间复杂度:O(N) N是被删除的字段数量。
删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。
如果 key 指定的哈希集不存在,它将被认为是一个空的哈希集,该命令将返回0。
1.1. 返回值
被成功移除的域的数量,不包括被忽略的域。
1.2. demo
# 如果指定的key不存在,当作是空哈希集,返回0
127.0.0.1:6380> EXISTS user:6
(integer) 0
127.0.0.1:6380> HDEL user:6 id
(integer) 0
# 返回删除的field的数量
127.0.0.1:6380> HMSET user:6 id 6 name user6 age 18
OK
127.0.0.1:6380> HGETALL user:6
1) "id"
2) "6"
3) "name"
4) "user6"
5) "age"
6) "18"
127.0.0.1:6380> HDEL user:6 id age addr
(integer) 2
127.0.0.1:6380> HGETALL user:6
1) "name"
2) "user6"
# 如果指定的key不是hash类型,返回错误
127.0.0.1:6380> set key6 value6
OK
127.0.0.1:6380> HDEL key6 id
(error) WRONGTYPE Operation against a key holding the wrong kind of value