Redis 的命令詳解 Hash 篇

2021-09-29 16:44:02 字數 2224 閱讀 9900

說明 : 由於 reids 的 hash 型別的格式如下,為了方便區分,裡層的 key 我稱呼為字段。

key :

起始版本 : 2.0.0 時間複雜度 : 新增乙個欄位-值對為o(1),新增多個字段:值對為o(n),n為字段:值對的數量。

從redis 4.0.0開始,hset 允許新增多個字段:值對。

hset key field1 value1 [field2 value2 ...]

新增的字段:值對的對數

起始版本 : 2.0.0

時間複雜度 : o(1)

只有字段不存在時,才新增字段:值對。key不存在時,先建立乙個 hash。

hsetnx key field value

起始版本 : 2.0.0

時間複雜度 : o(1)

hget key field

起始版本 : 2.0.0

時間複雜度 : o(n),其中n是字段的數目

hmget key field1 [field2 ...]

value列表,不存在的field返回nil,順序與field順序相同

起始版本 : 2.0.0

時間複雜度 : o(n),其中n是hash的大小。

hgetall key

返回所有的字段:值對列表,key如果不存在,返回空列表

起始版本 : 2.0.0

時間複雜度 : o(n),其中n是hash的大小。

hkeys key

返回所有的字段,key如果不存在則返回空列表

起始版本 : 2.0.0

時間複雜度 : o(n),其中n是hash的大小。

hvals key

返回所有的字段的值,key如果不存在則返回空列表

起始版本 : 2.0.0

時間複雜度 : o(n),其中n是要刪除的字段數。

hdel key field1 [field2]

從 hash 中刪除的字段個數,不包括指定的但不存在的字段。

redis 版本 >= 2.4:接受多個field引數。低於2.4的redis版本每次呼叫只能刪除乙個字段。

要在早期版本中以原子方式從雜湊中刪除多個字段,請使用multiexec

起始版本 : 2.0.0

時間複雜度 : o(1)

hexists key field

起始版本 : 2.0.0

時間複雜度 : o(1)

hlen key

字段:值對的數量,當 key 不存在,返回0

起始版本 : 3.2.0

時間複雜度 : o(1)

hstrlen key field

字段對應值的長度,如果 field 或 key 不存在,返回0

起始版本 : 2.0.0

時間複雜度 : o(1)

hincrby key field 整數

hincrby支援的整數的範圍,限制為64位帶符號整數。由於帶符號,所以可以變相實現減法操作

起始版本 : 2.6.0

時間複雜度 : o(1)

hincrbyfloat key field 數(可以是浮點數)

由於數可以帶符號,所以可以變相實現減法操作

Redis命令詳解 Hash

hash是一種string型別的field value的對映表,因此,它非常適合儲存物件。下面我們來一一介紹與hash相關的命令。hdel 最早可用版本 2.0.0 時間複雜度 o n 其中n為要刪除的field的個數 hdel命令用於刪除指定key的指定的乙個或多個field。如果指定的field...

Redis 雜湊(Hash)命令詳解

官網中文連線 將雜湊表 key 中的字段 field 的值設為 value 如果欄位是雜湊表中的乙個新建字段,並且值設定成功,返回 1 如果雜湊表中域字段已經存在且舊值已被新值覆蓋,返回 0 獲取儲存在雜湊表中指定欄位的值。返回給定欄位的值。如果給定的字段或 key 不存在時,返回 nil 獲取在雜...

Redis基本命令使用 hash篇

redis有6大基本型別,分別是字串 string 列表 list 集合 set 雜湊結構 hash 有序集合 zset 和基數 hyperloglog 介紹 redis hash 是乙個儲存多個鍵值對的對映表,適用於儲存物件的屬性,比如儲存使用者資訊 使用者session資訊等。在實際專案中使用的...