溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

發(fā)布時(shí)間:2022-05-31 15:13:09 來源:億速云 閱讀:190 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析文章都會(huì)有所收獲,下面我們一起來看看吧。

Redis數(shù)據(jù)類型Hash常用操作

redis里的hash是一個(gè)string類型的field(字段)和value(值)的映射表。特別適合用于存儲(chǔ)對象,每個(gè)hash可以存儲(chǔ)40多億鍵值對。

熟悉python的童鞋可以想象成字典dict。之前的數(shù)據(jù)類型存儲(chǔ)都是k-v這樣,而hash的存儲(chǔ)就是k-dict,dict里又會(huì)有屬于自己的k-v

一、hset

為哈希表中的字段賦值,如果哈希表不存在,創(chuàng)建一個(gè)新的哈希表被并進(jìn)行hset操作。
如果字段已經(jīng)存在于哈希表中,舊值將被覆蓋。

hset myhash k1 v1

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

二、hget

返回哈希表中指定字段的值,如果給定的字段或 key 不存在時(shí),返回 nil。

hget myhash k1

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

三、hmset

同時(shí)將多個(gè) field-value 對設(shè)置到哈希表中。

hmset myhash k2 v2 k3 v3

如果哈希表中已存在的字段,則覆蓋。
如果哈希表不存在,會(huì)創(chuàng)建一個(gè)空哈希表,并執(zhí)行hset操作。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

四、hmget

返回哈希表中,一個(gè)或多個(gè)給定字段的值。

hmget myhash k1 k2 k3 k4

如果指定的字段不存在于哈希表,那么返回一個(gè)nil值。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

五、hgetall

返回哈希表中,所有的字段和值。

hgetall myhash

注意,在返回值里,緊跟每個(gè)字段名(field name)之后是字段的值(value),所以返回值的長度是哈希表大小的兩倍。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

六、hdel

刪除哈希表 key 中的一個(gè)或多個(gè)指定字段,不存在的字段將被忽略。

hdel myhash k2 k3 k5

返回的是被成功刪除字段的數(shù)量,不包括被忽略的字段。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

七、hlen

獲取哈希表中字段的數(shù)量。

hlen myhash

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

八、hexists

查看哈希表的指定字段是否存在。

hexists myhash k1

如果哈希表含有給定字段,返回 1。
如果哈希表不含有給定字段,或 key 不存在,返回 0 。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

九、hkeys

獲取哈希表中的所有字段(field)。

hkeys myhash

包含哈希表中所有字段(field)列表。 當(dāng) key 不存在時(shí),返回一個(gè)空列表。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

十、hvals

返回哈希表所有字段(field)的值。

hvals myhash

返回一個(gè)包含哈希表中所有字段(field)值的列表。 當(dāng) key 不存在時(shí),返回一個(gè)空表。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

十一、hincrby

為哈希表中的字段值加上指定增量值,這個(gè)增量也可以是負(fù)數(shù),相當(dāng)于減法。

若哈希表的 key 不存在,創(chuàng)建一個(gè)新的哈希表被并執(zhí)行hincrby命令。

若指定的字段不存在,那么在執(zhí)行命令前,字段的值被初始化為 0 。

若對儲(chǔ)存字符串值的字段執(zhí)行,會(huì)報(bào)錯(cuò)。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

十二、hsetnx

為哈希表中不存在的的字段賦值。

若哈希表不存在,創(chuàng)建新的哈希表并進(jìn)行 hset 操作。

如果字段已經(jīng)存在于哈希表中,操作無效。

如果key不存在,創(chuàng)建新哈希表并執(zhí)行hsetnx命令。

Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析

關(guān)于redis中hash的應(yīng)用,比如保存用戶信息數(shù)據(jù)、經(jīng)常變動(dòng)的信息,如果不想使用傳統(tǒng)的k-v對象去存儲(chǔ),可以用redis的hash。

關(guān)于“Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Redis基本數(shù)據(jù)類型哈希Hash常用操作實(shí)例分析”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI