国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Redis】Redis 哈希 Hash 鍵值對集合操作 ( 哈希 Hash 鍵值對集合簡介 | 查詢操作 | 增加操作 | 修改操作 )

這篇具有很好參考價值的文章主要介紹了【Redis】Redis 哈希 Hash 鍵值對集合操作 ( 哈希 Hash 鍵值對集合簡介 | 查詢操作 | 增加操作 | 修改操作 )。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。





一、哈希 Hash 鍵值對集合



Redis 中的 Hash 數(shù)據(jù) 是一個 鍵值對集合 , 類似于 Java 中的 Map 集合 ;


Hash 數(shù)據(jù)底層數(shù)據(jù)結(jié)構(gòu)是 :

  • 壓縮列表 ZipList : Hash 中的 鍵值對 長度較短時 使用 壓縮列表 ;
  • 哈希表 HashTable : Hash 中的 鍵值對 長度較長時 使用 哈希表 ;

Redis 中存儲對象的方式 :

  • 存儲序列化之后的數(shù)據(jù) : 將 對象 序列化為 json 字符串 , 然后 存儲到 Redis 鍵值對 的 Value 值中 ;

    • 如果要修改對象中的數(shù)據(jù) , 要 先將對象反序列化 , 然后修改對象中的值 , 最后將對象序列化并保存 ;
  • 直接存儲對象字段 : 將每個對象的字段拆開 , 進行分開存儲 , 非常繁瑣 ;

    • 每個 Redis 的 鍵 都保存一個 對象字段 , 一個對象可能要消耗多個 鍵 ;
  • 使用 Hash 存儲 ( 推薦 ) : 將 對象 的 字段 , 都以 Hash 的 鍵值對 形式存儲起來 , 可以直接訪問修改對應(yīng)的對象字段 ;

    • 每個 Redis 鍵 保存一個對象 , 對象的屬性 由 Hash 鍵值對 保存 ;

鍵值對區(qū)分 : Redis 中的鍵值對 一般稱為 Key=Value , 在 Hash 中的鍵值對 一般稱為 Field=Value ;





二、查詢操作




1、Redis 中查詢 Hash 鍵值對數(shù)據(jù)


執(zhí)行

hget student name

命令 , 可以 獲取 Redis 中 student 鍵 對應(yīng)的 Hash 數(shù)據(jù)中的 name 鍵 對應(yīng)的 值 ;


代碼示例 :

127.0.0.1:6379> hset student name Tom
(integer) 1
127.0.0.1:6379> get student
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> hget student
(error) ERR wrong number of arguments for 'hget' command
127.0.0.1:6379> hget student name
"Tom"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL

注意 : 讀取該 Hash 的 name=Tom 鍵值對 時 , 需要使用 hget student name 命令 ;


2、查詢 Hash 鍵是否存在


執(zhí)行

hexists student name

命令 , 可以 獲取 Redis 中 student 鍵 對應(yīng)的 Hash 數(shù)據(jù)中的 name 鍵 是否存在 ;

  • 如果存在 , 返回 1 ;
  • 如果不存在 , 返回 0 ;

代碼示例 :

127.0.0.1:6379> hexists student name
(integer) 1
127.0.0.1:6379> hexists student name1
(integer) 0
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL


3、查詢 Hash 中所有的鍵 Field


執(zhí)行

hkeys student

命令 , 可以 獲取 Redis 中 student 鍵 對應(yīng)的 Hash 數(shù)據(jù)中的 所有 鍵 Field ;


代碼示例 :

127.0.0.1:6379> hkeys student
1) "name"
2) "age"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL


4、查詢 Hash 中所有的值


執(zhí)行

hvals student

命令 , 可以 獲取 Redis 中 student 鍵 對應(yīng)的 Hash 數(shù)據(jù)中的 所有 值 ;


代碼示例 :

127.0.0.1:6379>
127.0.0.1:6379> hvals student
1) "Tom"
2) "18"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL





三、增加操作




1、Redis 中插入 Hash 鍵值對數(shù)據(jù)


執(zhí)行

hset student name Tom

命令 , 可以 給 鍵 student 中的 Hash 數(shù)據(jù)值 添加 name=Tom 鍵值對 ;


代碼示例 :Redis 的 student 鍵值 插入 name=Tom 鍵值對 ;

127.0.0.1:6379> hset student name Tom
(integer) 1
127.0.0.1:6379> get student
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> hget student
(error) ERR wrong number of arguments for 'hget' command
127.0.0.1:6379> hget student name
"Tom"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL

注意 : 讀取該 Hash 的 name=Tom 鍵值對 時 , 需要使用 hget student name 命令 ;


2、批量插入 Hash 鍵值對數(shù)據(jù)


執(zhí)行

hmset student name Tom age 18

命令 , 可以 給 鍵 student 中的 Hash 數(shù)據(jù)值 添加 name=Tom 和 age=18 鍵值對 ;


代碼示例 :Redis 的 student 鍵值 插入 name=Tom 和 age=18 鍵值對 ;

127.0.0.1:6379> hmset student name Tom age 18
OK
127.0.0.1:6379> hget student age
"18"
127.0.0.1:6379> hget student name
"Tom"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL





四、修改操作




1、Hash 中 Field 鍵對應(yīng)值增減值


執(zhí)行

hincrby student age -5

命令 , 可以 給 鍵 student 中的 Hash 數(shù)據(jù)值 age=18 數(shù)據(jù)中的值 -5 操作 ;


代碼示例 :

127.0.0.1:6379>
127.0.0.1:6379> hincrby student age -5
(integer) 13
127.0.0.1:6379> hvals student
1) "Tom"
2) "13"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL


2、設(shè)置 Hash 中 Field 鍵對應(yīng)值


執(zhí)行

hsetnx student weight 85

命令 , 可以 在 鍵 student 中的 Hash 數(shù)據(jù)值 如果不存在 weight 鍵 , 則 添加 weight=85 鍵值對數(shù)據(jù) ;


代碼示例 :

127.0.0.1:6379>
127.0.0.1:6379> hsetnx student weight 85
(integer) 1
127.0.0.1:6379> hkeys student
1) "name"
2) "age"
3) "weight"
127.0.0.1:6379>

redis 修改hash值,Redis,redis,Hash,壓縮列表,哈希表,NoSQL文章來源地址http://www.zghlxwxcb.cn/news/detail-554305.html

到了這里,關(guān)于【Redis】Redis 哈希 Hash 鍵值對集合操作 ( 哈希 Hash 鍵值對集合簡介 | 查詢操作 | 增加操作 | 修改操作 )的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 一圖看懂 multidict 模塊:類似于字典的鍵值對集合,鍵可以多次出現(xiàn),資料整理+筆記(大全)

    一圖看懂 multidict 模塊:類似于字典的鍵值對集合,鍵可以多次出現(xiàn),資料整理+筆記(大全)

    本文由 大俠(AhcaoZhu)原創(chuàng),轉(zhuǎn)載請聲明。 鏈接: https://blog.csdn.net/Ahcao2008 全文介紹系統(tǒng)內(nèi)置 multidict 模塊(類似于字典的鍵值對集合,鍵可以多次出現(xiàn))、函數(shù)、類及類的方法和屬性。 它通過代碼抓取并經(jīng)AI智能翻譯和人工校對。 是一部不可多得的權(quán)威字典類工具書。它是系列集

    2024年02月04日
    瀏覽(28)
  • Java鍵值對Pair的使用方式和操作流程

    Java鍵值對Pair的使用方式和操作流程

    目錄 一、什么是鍵值對 二、Java的Pair 三、Pair 的使用場景 ? 鍵值對是一種常見的數(shù)據(jù)結(jié)構(gòu),它由一個唯一的鍵(key)和與之關(guān)聯(lián)的值(value)組成 。鍵和值之間存在一種映射關(guān)系,通過鍵可以查找或訪問對應(yīng)的值。 在鍵值對中,鍵通常用于唯一標(biāo)識和區(qū)分不同的數(shù)據(jù)項,而

    2024年02月07日
    瀏覽(22)
  • Python dict字典基本操作(包括添加、修改、刪除鍵值對)

    由于字典屬于可變序列,所以我們可以任意操作字典中的鍵值對(key-value)。Python 中,常見的字典操作有以下幾種: 向現(xiàn)有字典中添加新的鍵值對。 修改現(xiàn)有字典中的鍵值對。 從現(xiàn)有字典中刪除指定的鍵值對。 判斷現(xiàn)有字典中是否存在指定的鍵值對。 初學(xué)者要牢記,字典

    2024年02月08日
    瀏覽(29)
  • redis—Hash哈希

    redis—Hash哈希

    目錄 前言 1.常見命令 1.1命令小結(jié) 1.2內(nèi)部編碼 2.使用場景 幾乎所有的主流編程語言都提供了哈希(hash) 類型,它們的叫法可能是哈希、字典、關(guān)聯(lián)數(shù)組、映射。在Redis中,哈希類型是指值本身又是一個鍵值對結(jié)構(gòu),形如key= \\\"key\\\", value={{ field1, value1 }, ... {fieldN, valueN }}, Redis 鍵值對

    2024年02月04日
    瀏覽(17)
  • Redis 哈希( Hash )

    【一】簡介 ? Redis hash 是一個鍵值對集合。 ?Redis hash 是一個 string 類型的? field? 和? value? 的映射表, hash 特別適合用于存儲對象。 類似 Java 里面的 Map String , Object? ?用戶 ID 為查找的 key ,存儲的 value 用戶對象包含姓名,年齡,生日等信息,如果用普通的 key/value 結(jié)構(gòu)來存

    2024年02月12日
    瀏覽(20)
  • Redis學(xué)習(xí)2 - 哈希(Hash)

    Redis學(xué)習(xí)2 - 哈希(Hash)

    Hash操作 Redis hash 是一個 string 類型的 field(字段) 和 value(值) 的映射表,hash 特別適合用于存儲對象。 Redis 中每個 hash 可以存儲 232 - 1 鍵值對(40多億) 1. Hset Hset 命令用于為哈希表中的字段賦值 。 如果哈希表不存在,一個新的哈希表被創(chuàng)建并進行 HSET 操作。 如果字段已

    2023年04月18日
    瀏覽(23)
  • 【Redis】Hash 哈希內(nèi)部編碼方式

    【Redis】Hash 哈希內(nèi)部編碼方式

    哈希的內(nèi)部編碼有兩種: ziplist(壓縮列表):當(dāng)哈希類型元素個數(shù)?于hash-max-ziplist-entries配置(默認(rèn)512個)、同時所有值都?于hash-max-ziplist-value配置(默認(rèn)64字節(jié))時,Redis會使?ziplist作為哈希的內(nèi)部實現(xiàn),ziplist使?更加緊湊的結(jié)構(gòu)實現(xiàn)多個元素的連續(xù)存儲,所以在節(jié)省內(nèi)

    2024年02月07日
    瀏覽(25)
  • Redis命令---Hash(哈希)篇 (超全)

    Redis命令---Hash(哈希)篇 (超全)

    可用版本: = 2.0.0 返回值: 如果命令執(zhí)行成功,返回 OK 。 可用版本: = 2.0.0 返回值: 一個包含多個給定字段關(guān)聯(lián)值的表,表值的排列順序和指定字段的請求順序一樣。 可用版本: = 2.0.0 返回值: 如果字段是哈希表中的一個新建字段,并且值設(shè)置成功,返回 1 。 如果哈希表中域字段

    2024年02月19日
    瀏覽(18)
  • Redis數(shù)據(jù)類型-Hash哈希存儲類型

    Redis數(shù)據(jù)類型-Hash哈希存儲類型

    小白:偉哥,java中的Map集合類型在Redis中有對應(yīng)的存儲嗎? 偉哥:有的,我?guī)銛]一波。 Redis的hash哈希存儲類型,類似于是java中的map存儲結(jié)構(gòu),適合用來存儲對象,每個哈希最多可以存儲4294967295(2^32-1)個字段值對,具體數(shù)量實際上也受Redis部署的虛擬機上的總內(nèi)存的限制

    2024年02月12日
    瀏覽(22)
  • python中Dict 字典類型(鍵值對)

    字典也是用于存儲一組或者多組數(shù)據(jù)時使用 字典是 鍵值對 的存儲方式 name : admin 鍵和值之間使用 冒號分隔 鍵必須是字符串或者數(shù)字類型,鍵可以是任意類型 鍵名不能重復(fù),值可以重復(fù) 比如需要記錄一本樹相關(guān)數(shù)據(jù) 書名,作者,價格… vard = [{‘title’:’鬼谷子’,‘a(chǎn)uthor’:‘鬼

    2023年04月09日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包