redis hash 是乙個string型別的field和value的對映表,hash特別適合用於儲存物件。 redis 中每個 hash 可以儲存 232 - 1 鍵值對(40多億)
可以看成具有key和value的map容器,該型別非常適合於儲存值物件的資訊, 如:uname,uage等。該型別的資料僅占用很少的磁碟空間(相比於json) 。
hset key field value [field value …]
redis hset 命令用於為雜湊表中的字段賦值 。
如果雜湊表不存在,乙個新的雜湊表被建立並進行 hset 操作。
如果字段已經存在於雜湊表中,舊值將被覆蓋。
examples
127.0.0.1:6379> hset people name dsy age 22 height 175
(integer) 3
127.0.0.1:6379> keys *
1)"people"
一、hget key field
redis hget 命令用於返回雜湊表中指定欄位的值。
examples
127.0.0.1:6379> hget people name
"dsy"
127.0.0.1:6379> hget people age
"22"
127.0.0.1:6379> hget people height
"175"
二、hgetall key field
redis hgetall 命令用於返回雜湊表中,所有的字段和值。
在返回值裡,緊跟每個欄位名(field name)之後是字段的值(value),所以返回值的長度是雜湊表大小的兩倍。
examples
127.0.0.1:6379> hgetall people
1)"name"
2)"dsy"
3)"age"
4)"22"
5)"height"
6)"175"
三、hmget key field [field …]
redis hmget 命令用於返回雜湊表中,乙個或多個給定欄位的值。
如果指定的字段不存在於雜湊表,那麼返回乙個 nil 值。
examples
127.0.0.1:6379> hmget people name age height weight
1)"dsy"
2)"22"
3)"175"
4)(nil)
四、hkeys key
redis hkeys 命令用於獲取雜湊表中的所有欄位名。
examples
127.0.0.1:6379> hkeys people
1)"name"
2)"age"
3)"height"
hdel key field [field …]
redis hdel 命令用於刪除雜湊表 key 中的乙個或多個指定字段,不存在的字段將被忽略。
examples
127.0.0.1:6379> hset cat number 2 color yellow
(integer) 2
127.0.0.1:6379> hdel cat number
(integer) 1
127.0.0.1:6379> hgetall cat
1)"color"
2)"yellow"
一、hexists key field
redis hexists 命令用於檢視雜湊表的指定字段是否存在。
examples
127.0.0.1:6379> hexists people name
(integer) 1
127.0.0.1:6379> hexists people color
(integer) 0
二、hincrby key field increment
redis hincrby 命令用於為雜湊表中的字段值加上指定增量值。
增量也可以為負數,相當於對指定字段進行減法操作。
如果雜湊表的 key 不存在,乙個新的雜湊表被建立並執行 hincrby 命令。
如果指定的字段不存在,那麼在執行命令前,欄位的值被初始化為 0 。
對乙個儲存字串值的字段執行 hincrby 命令將造成乙個錯誤。
本操作的值被限制在 64 位(bit)有符號數字表示之內。
examples
127.0.0.1:6379> hget people age
"22"
127.0.0.1:6379> hincrby people age 10
(integer) 32
127.0.0.1:6379> hincrby people age -10
(integer) 22
127.0.0.1:6379> hincrby people money -10
(integer)
-10127.0.0.1:6379> hgetall people
1)"name"
2)"dsy"
3)"age"
4)"22"
5)"height"
6)"175"
7)"money"
8)"-10"
127.0.0.1:6379> hincrby people name 1
(error) err hash value is not an integer
三、hincrbyfloat key field increment
redis hincrbyfloat 命令用於為雜湊表中的字段值加上指定浮點數增量值。
如果指定的字段不存在,那麼在執行命令前,欄位的值被初始化為 0 。
examples
127.0.0.1:6379> hgetall people
1)"name"
2)"dsy"
3)"age"
4)"22"
5)"height"
6)"175"
7)"money"
8)"-10"
127.0.0.1:6379> hincrbyfloat people money 100.5
"90.5"
四、hlen key
redis hlen 命令用於獲取雜湊表中字段的數量。
examples
127.0.0.1:6379> hkeys people
1)"name"
2)"age"
3)"height"
4)"money"
127.0.0.1:6379> hlen people
(integer) 4
四、hvals key
redis hvals 命令返回雜湊表所有欄位的值。
examples
127.0.0.1:6379> hgetall people
1)"name"
2)"dsy"
3)"age"
4)"22"
5)"height"
6)"175"
7)"money"
8)"90.5"
127.0.0.1:6379> hkeys people
1)"name"
2)"age"
3)"height"
4)"money"
127.0.0.1:6379> hvals people
1)"dsy"
2)"22"
3)"175"
4)"90.5"
redis學習筆記二 redis的相關命令
expire key time 以秒為單位對於記憶體中不常用的資料塊叫做lru,會把lru資料塊移出記憶體。valatile lru 設定超時時間中,刪除最不常用的資料。allkeys lru 設定所以key中不常用的刪除。valatile random 設定超時時間中,隨機刪除key。allkey...
redis命令,學習筆記
1.在啟動redis服務之前,先了解一下redis相關可執行檔案的主要作用 1 redis server redis伺服器 2 redis cli redis命令列客戶端 2.string 型別,其中set setex get incr 最常用 set key val 若key存在,則覆蓋之前的va...
redis學習筆記 二
1.redis中命令大小寫不敏感 2.redis的啟動 sudo service redis server start redis cli 啟動客戶端 exists key 判斷乙個key是否存在,存在返回1,不存在返回0 del key 刪除乙個key,或者一系列的kye del key1 key...