3 常用命令總結
4 hash 型別資料操作的注意事項
新增或修改
hset key field value
hsetnx key field value # 設定乙個不存在的key的值
獲取資料
hget key field
hgetall key
刪除資料,可以刪除多個字段
hdel key field1 [field2]
eg:
localhost:6379> hset user name kobe
(integer) 1
localhost:6379> hset user age 18
(integer) 1
localhost:6379> hset user gender man
(integer) 1
localhost:6379> hget user name
"kobe"
localhost:6379> hget user age
"18"
localhost:6379> hget user gender
"man"
localhost:6379> hgetall user # 注意獲取所有的時候的返回格式
1)"name"
2)"kobe"
3)"age"
4)"18"
5)"gender"
6)"man"
localhost:6379> hdel user name
(integer) 1
localhost:6379> hgetall user
1)"age"
2)"18"
3)"gender"
4)"man"
eg:測試hsetnx
localhost:6379> hmset user name kobe age 18
oklocalhost:6379> hgetall user
1)"name"
2)"kobe"
3)"age"
4)"18"
localhost:6379> hsetnx user name wade # name屬性已經有值
(integer) 0
localhost:6379> hget user name # 所以不會修改,還是原先的值
"kobe"
localhost:6379> hsetnx user gender man
# gender是原先沒有的,所以可以成功設定
(integer) 1
localhost:6379> hget user gender
"man"
localhost:6379> hgetall user
1)"name"
2)"kobe"
3)"age"
4)"18"
5)"gender"
6)"man"
獲取雜湊表中所有的欄位名或字段值
hkeys key # 獲取雜湊表中所有的字段
hvals key # 獲取雜湊表中所有字段值
eg:
localhost:6379> hmset user name kobe age 18 gender man
oklocalhost:6379> hkeys user
1)"name"
2)"age"
3)"gender"
localhost:6379> hvals user
1)"kobe"
2)"18"
3)"man"
新增/修改多個資料
hmset key field1 value1 field2 value2 …
獲取多個資料
hmget key field1 field2 …
eg:
localhost:6379> hmset user name kobe age 18 gender man
oklocalhost:6379> hgetall user
1)"name"
2)"kobe"
3)"age"
4)"18"
5)"gender"
6)"man"
localhost:6379> hmget user name age
1)"kobe"
2)"18"
localhost:6379> hdel user name age
(integer) 2
localhost:6379> hgetall user
1)"gender"
2)"man"
獲取雜湊表中字段的數量
hlen key
獲取雜湊表中是否存在指定的字段
hexists key field
eg:
localhost:6379> hmset user name kobe age 18 gender man
oklocalhost:6379> hlen user
(integer) 3
localhost:6379> hexists user name
(integer) 1 # 存在就返回0
localhost:6379> hexists user id
(integer) 0 # 不存在就返回0
localhost:6379>
設定指定欄位的數值資料增加指定範圍的值
hincrby key field increment
hincrbyfloat key field increment
eg:
localhost:6379> hgetall user
1)"name"
2)"kobe"
3)"age"
4)"18"
5)"gender"
6)"man"
localhost:6379> hincrby user age 2
(integer) 20
localhost:6379> hget user age
"20"
localhost:6379> hincrby user age -2 # 也可以是負數
(integer) 18
localhost:6379> hget user age
"18"
命令
說明hset
設定乙個key/value對
hget
獲得乙個key對應的value
hgetall
獲得所有的key/value對
hdel
刪除某乙個key/value對
hexists
判斷乙個key是否存在
hkeys
獲得所有的key
hvals
獲得所有的value
hmset
設定多個key/value
hmget
獲得多個key的value
hsetnx
設定乙個不存在的key的值
hincrby
為value進行加法運算
hincrbyfloat
為value加入浮點值
redis中hash型別介紹
在redis中,hash資料型別儲存的資料與mysql資料庫中儲存一條記錄極為相似,是乙個string型別的field和value的對映表,它特別適合用於儲存物件,但字段值只能是字串,不支援其他型別。在hash型別中,乙個key可以對應多個多個field,乙個field對應乙個value。將乙個物件...
Hash型別的命令
hash型別的命令主要有以下幾種 hset hget hmset hmget hdel hgetall hexists hkeys hvals 都較為簡單 此文有詳細介紹 返回hash表中元素個數 hlen key 返回hash表某個元素值的長度 hstrlen key field 設定hash表的...
Redis資料型別之Hash型別介紹
redis中的hashes型別可以看成具有string key和string value的map容器。所以該型別非常適合於儲存值物件的資訊。如username password和age等。如果hash中包含很少的字段,那麼該型別的資料也將僅占用很少的磁碟空間。每乙個hash可以儲存429496729...