天天看點

redis 哈希 操作(三)

  • HSET KEY_NAME FIELD VALUE (用于為哈希表中的字段指派;如果哈希表不存在,一個新的哈希表被建立并進行 HSET 操作;如果字段已經存在于哈希表中,舊值将被覆寫)
  • HGET KEY_NAME FIELD_NAME (用于傳回哈希表中指定字段的值)
127.0.0.1:6379[1]> hset user name zrtao
(integer) 0
127.0.0.1:6379[1]> hget user name
"zrtao"
           
  • HMSET KEY_NAME FIELD1 VALUE1 …FIELDN VALUEN (用于同時将多個 field-value (字段-值)對設定到哈希表中)
127.0.0.1:6379[1]> hmset user name zrt age 25 sex 1
OK
127.0.0.1:6379[1]> hmget user name age sex
1) "zrt"
2) "25"
3) "1"
           
  • HDEL KEY_NAME FIELD1… FIELDN(用于删除哈希表 key 中的一個或多個指定字段,不存在的字段将被忽略)
127.0.0.1:6379[1]> hdel user sex
(integer) 1
127.0.0.1:6379[1]> hget user sex
(nil)
           
  • HEXISTS KEY_NAME FIELD_NAME (用于檢視哈希表的指定字段是否存在)
127.0.0.1:6379[1]> hexists user sex
(integer) 0
127.0.0.1:6379[1]> hexists user name
(integer) 1
           
  • HGETALL KEY_NAME (用于傳回哈希表中,所有的字段和值;在傳回值裡,緊跟每個字段名(field name)之後是字段的值(value),是以傳回值的長度是哈希表大小的兩倍)
127.0.0.1:6379[1]> hgetall user
1) "name"
2) "zrt"
3) "age"
4) "25"
           
  • HINCRBY KEY_NAME FIELD_NAME INCR_BY_NUMBER(用于為哈希表中的字段值加上指定增量值)
127.0.0.1:6379[1]> hincrby user age 1
(integer) 26
127.0.0.1:6379[1]> hget user age
"26"
           
  • HKEYS key (用于擷取哈希表中的所有域(field))
127.0.0.1:6379[1]> hkeys user
1) "name"
2) "age"
           
  • HLEN KEY_NAME (用于擷取哈希表中字段的數量)
127.0.0.1:6379[1]> hlen user
(integer) 2
           
  • HSETNX KEY_NAME FIELD VALUE(用于為哈希表中不存在的的字段指派)
127.0.0.1:6379[1]> hsetnx user name zrtao
(integer) 0 // 由于哈希清單中已經存在 name 字段,是以沒有設定成功
127.0.0.1:6379[1]> hsetnx user sex 1
(integer) 1
           
  • HVALS KEY_NAME FIELD VALUE(傳回哈希表所有域(field)的值)
127.0.0.1:6379[1]> hvals user
1) "zrt"
2) "26"
3) "1"
           

參考:

https://www.runoob.com/redis/redis-commands.html

https://learnku.com/articles/24802

繼續閱讀