Redis之hash型別及操作

stonebox1122發表於2017-08-11
hash型別特別適合用於儲存物件。

hset:設定hash field為指定值,如果key不存在,則先建立。
127.0.0.1:6379> hset myhash field hello
(integer) 1
127.0.0.1:6379> hget myhash field
"hello"

hsetnx:設定hash field為指定值,如果key不存在,則先建立,如果存在返回0。
127.0.0.1:6379> hsetnx myhash field hello
(integer) 0
127.0.0.1:6379> hsetnx myhash field2 world
(integer) 1
127.0.0.1:6379> hget myhash field
"hello"
127.0.0.1:6379> hget myhash field2
"world"

hmset:同時設定hash的多個field。
127.0.0.1:6379> hmset myhash field1 hello field2 world
OK

hmget:獲取全部指定的hash field。
127.0.0.1:6379> hmget myhash field1 field2
1) "hello"
2) "world"

hincrby:指定的hash field加上給定值。
127.0.0.1:6379> hset myhash age 10
(integer) 1
127.0.0.1:6379> hget myhash age
"10"
127.0.0.1:6379> hincrby myhash age 8
(integer) 18
127.0.0.1:6379> hget myhash age
"18"

hexists:測試指定field是否存在。
127.0.0.1:6379> hexists myhash age
(integer) 1

hlen:返回指定hash的field數量。
127.0.0.1:6379> hlen myhash
(integer) 4

hdel:刪除指定hash的field。
127.0.0.1:6379> hdel myhash age
(integer) 1
127.0.0.1:6379> hlen myhash
(integer) 3

hkeys:返回hash的所有field。
127.0.0.1:6379> hkeys myhash
1) "field"
2) "field2"
3) "field1"

hvals:返回hash的所有value。
127.0.0.1:6379> hvals myhash
1) "hello"
2) "world"
3) "hello"

hgetall:獲取某個hash中全部的field及value。
127.0.0.1:6379> hgetall myhash
1) "field"
2) "hello"
3) "field2"
4) "world"
5) "field1"
6) "hello"

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28536251/viewspace-2143376/,如需轉載,請註明出處,否則將追究法律責任。

相關文章