redis中哈希hash

实习项目中使用到,学习一下,作为对自己项目中只用过string和list的补充。

Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象。

Redis 中每个 hash 可以存储 2^32 - 1 键值对(40多亿)。

常用命令

  1. hset(key, field, value):向名称为key的hash中添加元素field<—>value

  2. hget(key, field):返回名称为key的hash中field对应的value

  3. hmget(key, field1, …,field N):返回名称为key的hash中field i对应的value

  4. hmset(key, field1, value1,…,field N, value N):向名称为key的hash中添加元素field i<—>value i

  5. hexists(key, field):名称为key的hash中是否存在键为field的域

  6. hdel(key, field):删除名称为key的hash中键为field的域

示例:

1
2
3
4
5
6
7
8
9
HSET key field value
HGET key field
将一组field-value(域-值)对设置到哈希表key中。
此命令会覆盖已经存在的域,如果key
不存在,一个新的哈希表被创建并进行[HSET]操作。

redis> HSET blaise blog "http://www.jianshu.com/u/08b68953dd14"
redis> HGET blaise blog
"http://www.jianshu.com/u/08b68953dd14"
1
2
3
4
5
6
7
8
9
10
11
12
13
HMSET key field value [field value ...]
HMGET key field [field ...]
同时将多个field - value(域-值)对设置到哈希表key中。
此命令会覆盖已经存在的域,如果key不存在,一个新的哈希表被创建并执行[HMSET]操作。

redis> HMSET webside google "www.google.com" bing "www.bing.com"
"OK"
redis> HGET webside google
"www.google.com"
redis> HGET webside google bing
1) "www.google.com"
2) "www.bing.com"
redis>
1
2
3
4
5
redis>HDEL webside google
(integer) 1
删除webside key可以使用DEL
redis>DEL webside
(integer) 1

:转载文章请注明出处,谢谢~