redis之map类型(hashes)

1、官网map对应的所有命令

https://redis.io/commands/?group=hash

2、限制

每个哈希最多可以存储4,294,967,295(2^32 - 1)个字段值对。实际上,你的哈希值只受Redis部署虚拟机内存总量的限制。

3、基本命令

HSET设置一个或多个散列字段的值。
HGET返回给定字段的值。
HGETALL返回给定key的所有key-value。

> HSET user:123 username martina firstName Martina lastName Elisa country GB
(integer) 4
> HGET user:123 username
"martina"
> HGETALL user:123
1) "username"
2) "martina"
3) "firstName"
4) "Martina"
5) "lastName"
6) "Elisa"
7) "country"
8) "GB"

HMGET返回一个或多个给定字段的值。

> HGETALL user:123 username firstName
1) "martina"
2) "Martina"

HSETNX如果字段是散列中的新字段,且value已设置,则为1。
如果字段已经存在于散列中且未执行任何操作,则返回0。

> HSETNX myhash field "Hello"
(integer) 1
> HSETNX myhash field "World"
(integer) 0
> HGET myhash field
"Hello"

HKEYS获取集合中所有的field

> HSET myhash field1 "Hello"
(integer) 1
> HSET myhash field2 "World"
(integer) 1
> HKEYS myhash
1) "field1"
2) "field2"

HVALS获取集合中field对应的所有value值

> HVALS myhash
1) "Hello"
2) "World"

HINCRBY将给定字段的值加所提供的整数。

> HINCRBY device:777:stats pings 1
(integer) 1
> HINCRBY device:777:stats pings 1
(integer) 2
> HINCRBY device:777:stats pings 1
(integer) 3
> HINCRBY device:777:stats errors 1
(integer) 1
> HINCRBY device:777:stats requests 1
(integer) 1
> HGET device:777:stats pings
"3"
> HMGET device:777:stats requests errors
1) "1"
2) "1"

4、性能

大多数Redis哈希命令是O(1)。一些命令(如HKEYS、HVALS和HGETALL)是O(n),其中n是字段值对的数量。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值