<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 3.4.2 HASH-字典 在 Memcached 中,我們經常將一些結構化的信息打包成 hashmap,在客戶端序列化后存儲為一個字符串的值(一般是 JSON 格式),比如用戶的昵稱、年齡、性別、積分等。這時候在需要修改其中某一項時,通常需要將字符串(JSON)取出來,然后進行反序列化,修改某一項的值,再序列化成字符串(JSON)存儲回去。簡單修改一個屬性就干這么多事情,消耗必定是很大的,也 不適用于一些可能并發操作的場合(比如兩個并發的操作都需要修改積分)。而 Redis 的 Hash 結構可以使你像在數據庫中 Update 一個屬性一樣只修改某一項屬性值。 `hset` -- 設置hash field為指定值,如果key不存在,則先創建。 ```bash > hset myhash field1 Hello ``` `hsetnx` -- 設置hash field為指定值,如果key不存在,則先創建。如果field已經存在,返回0,nx是not exist的意思。 ```bash > hsetnx myhash field "Hello" (integer) 1 > hsetnx myhash field "Hello" (integer) 0 ``` 第一次執行是成功的,但第二次執行相同的命令失敗,原因是field已經存在了。 `hmset` -- 同時設置hash的多個field。 ```bash > hmset myhash field1 Hello field2 World > OK ``` `hget` -- 獲取指定的hash field。 ```bash > hget myhash field1 "Hello" > hget myhash field2 "World" > hget myhash field3 (nil) ``` 由于數據庫沒有field3,所以取到的是一個空值nil. `hmget` -- 獲取全部指定的hash filed。 ```bash > hmget myhash field1 field2 field3 1) "Hello" 2) "World" 3) (nil) ``` ` hincrby` -- 指定的hash filed 加上給定值。 ```bash > hset myhash field3 20 (integer) 1 > hget myhash field3 "20" > hincrby myhash field3 -8 (integer) 12 > hget myhash field3 "12 ``` `hexists` -- 測試指定field是否存在。 ```bash > hexists myhash field1 (integer) 1 > hexists myhash field9 (integer) 0 通過上例可以說明field1存在,但field9是不存在的。 ``` `hlen` -- 返回指定hash的field數量。 ```bash > hlen myhash (integer) 4 ``` `hkeys` -- 返回hash的所有field。 ```bash > hkeys myhash > 1) "field2" > 2) "field" > 3) "field3" ``` 說明這個hash中有3個field。 `hvals` -- 返回hash的所有value。 ```bash > hvals myhash 1) "World" 2)"Hello" 3)"12" ``` 說明這個hash中有3個field。 `hgetall` -- 獲取某個hash中全部的filed及value。 ```bash > hgetall myhash 1) "field2" 2) "World" 3) "field" 4) "Hello" 5) "field3" 6) "12" ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看