04_Redis_Hash命令

一:Redis 哈希(Hash)

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

 1.2:Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。

 1.3:Redis中的Hash类型可以看成具有String Key和String Value的map容器。所以该类型非常适合于存储值对象的信息。如Username、Password和Age等。如果Hash中包含很少的字段,那么该类型的数

    据也将仅占用很少的磁盘空间。每一个Hash可以存储4294967295个键值对。

      Hash  ---->  {username:”张三”,age:”18”,sex:”man”}------javaBean

          Hash特点:占用的磁盘空间极少。

二:Redis hash 命令

  2.1:hset key field value:将哈希表 key 中的字段 field 的值设为 value;

  2.2:hget key field:获取存储在哈希表中指定字段的值  

redis 127.0.0.1:6379> HSET myhash field1 "foo"
OK
redis 127.0.0.1:6379> HGET myhash field1
"foo"

redis 127.0.0.1:6379> HSET website google "www.g.cn"       # 设置一个新域
(integer) 1

redis 127.0.0.1:6379>HSET website google "www.google.com"  # 覆盖一个旧域
(integer) 0                                 # 如果字段是哈希表中的一个新建字段,并且值设置成功,返回1;如果哈希表中域字段已经存在且旧值已被新值覆盖,返回0
redis 127.0.0.1:6379>HGET website google "www.google.com"

  2.3:hmset key field1 value1 [field2 value2 ]:同时将多个 field-value (域-值)对设置到哈希表 key 中

  2.4:hmget key field1 [field2]:获取key中的多个filed的值

redis 127.0.0.1:6379> HMSET myhash2 uname zhangsan age 18 sex man
OK
redis 127.0.0.1:6379> HMGET myhash2 uname age
1>"zhangsan "
2>"18 "

  2.5:HGETALL key:获取在哈希表中指定 key 的所有字段和值

redis 127.0.0.1:6379> HGETALL myhash2
1) "uname"
2) "zhangsan"
3) "age"
4) "18"
5) "sex"
6) "man"

猜你喜欢

转载自www.cnblogs.com/yaboya/p/8962971.html