hset命令用來給字段賦值,而hget命令用來獲得欄位的值。用法如下:
127.0.0.1:6379> hset car price 500
(integer) 1
127.0.0.1:6379> hset car name bmw
(integer) 1
127.0.0.1:6379> hget car name
"bmw"
127.0.0.1:6379> hset car price 600
(integer) 0
hset命令的方便之處在於不區分插入和更新操作,這意味著修改資料時不用事先判斷字段是否存在,來決定要執行的是插入操作(update)還是更新操作(insert)。當執行的是插入操作時(即之前欄位不存在)hset命令會返回1,當執行的是更新操作時(即之前的字段已經存在)hset命令會返回0。更進一步,當鍵本身不存在時,hset命令還會自動建立它。
127.0.0.1:6379> hmset car price 500 name bmw
ok127.0.0.1:6379> hmget car price name
1)"500"
2)"bmw"
hexists命令用來判斷乙個字段是否存在。如果存在則返回1,否則返回0。
127.0.0.1:6379> hexists car model
(integer) 0
127.0.0.1:6379> hset car model c200
(integer) 1
127.0.0.1:6379> hexists car model
(integer) 1
hsetnx命令和hset命令類似,區別在於如果字段已經存在,hsenx命令將不執行任何操作。其實現可以表示為如下偽**:
def hsetnx
($key,$field,$value)
$i***ists=hexists $key,$field
if $i***ists is 0
hset $key,$field,$value
return
1else
return
0
127.0.0.1:6379> hsetnx car price 600
(integer) 0
127.0.0.1:6379> hget car price
"500"
雜湊型別沒有hincr命令,但是可以通過hincrby key value 1來實現。
127.0.0.1:6379> hincrby person score 90
(integer) 90
127.0.0.1:6379> hget person score
"90"
hdel命令可以刪除乙個或多個字段,返回值是被刪除的字段個數。
127.0.0.1:6379> hdel car model
(integer) 1
127.0.0.1:6379> hdel car model
(integer) 0
127.0.0.1:6379> hkeys car
1)"price"
2)"name"
127.0.0.1:6379> hvals car
1)"500"
2)"bmw"
127.0.0.1:6379> hlen car
(integer) 2
Redis 雜湊hash 型別
redis hash 是乙個 string 型別的 field 和 value 的對映表,hash 特別適合用於儲存物件 基本語法 設定值 hmset hmset zhangsan name 張三 age 20 男 設定值 hset hset zhangsan name 張三 獲取資料 hgetal...
redis之雜湊型別(hash)
redis的雜湊值是字串欄位和字串值之間的對映,所以他們是表示物件的完美資料型別。在redis中的雜湊值,可儲存超過400十億鍵值對。假如我有乙個表示 職工 的物件,他可以有如下屬性 看看是如何將物件儲存到redis中的 hmset zhibin name binbin age 26 positio...
Redis的雜湊型別 Hash
redis hash 是乙個鍵值對集合。redis hash是乙個string型別的field和value的對映表,hash特別適合用於儲存物件。本次演示hash的基本操作 將雜湊表的key值test hash中的值value設為 123 lalala 333 123abc 127.0.0.1 63...