Redis 数据结构 -- 哈希
hash 是 一个 String 类型的field 和 value 的映射表
hash 的键值 对在内存中的一种无序的状态
命令 | 说明 | 备注 |
---|---|---|
hdel key field1 [ field2..... ] | 删除 hash 结构中的 某个 (些 ) 字段 | 可以进行多个字段的删除 |
hexists key field | 判断 hash 结构 中 是否存在 field 字段 | 存在返回 1 ,否则返回 0 |
hgetall key | 获取所有hash结构中的键值 | 返回键 和 值 |
hincrby key field increment | 指定给hash 结构 中的某一个字段加上一个整数 | 要求该字段也是整数字符串 |
hincrbyfloat key field increment | 指定给hash 结构 中的某一字段加上一个浮点数 | 要求该字段也是数字型字符串 |
hkeys key | 返回 hash 中 所有的键 | -- |
hlen key | 返回hash 中 键值对的数量 | -- |
hmget key field1 [field2 .... ] | 返回 hash 中 指定 的键 的值 ,可以是多个 | 依次返回 |
hmest key field1 value1 [field2 ....] | 在 hash 结构中 设置多个键值对 | 单个设值 |
hset key filed value | 在 hash 结构中 设置键值对 | 单个设值 |
hsetnx key field value | 当hash 结构 中 不存在对应的键值,才设置值 | -- |
hvals key | 获取hash 结构中所有的值 | -- |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
127.0.0.1:6379> hmset hash f1 val1 f2 val2
OK
127.0.0.1:6379> hset hash f3 6
(integer) 1
127.0.0.1:6379> hexists hash f2
(integer) 1
127.0.0.1:6379> hgetall hash
1) "f1"
2) "val1"
3) "f2"
4) "val2"
5) "f3"
6) "6"
127.0.0.1:6379> hincrby hash f3 2
(integer) 8
127.0.0.1:6379> hincrbyfloat hash f3 0.8
"8.800000000000001"
127.0.0.1:6379> hkeys hash
1) "f1"
2) "f2"
3) "f3"
127.0.0.1:6379> hlen hash
(integer) 3
127.0.0.1:6379> hmget hash f1 f2
1) "val1"
2) "val2"
127.0.0.1:6379> hsetnx key f4 val4
(integer) 1
127.0.0.1:6379> hvals hash
1) "val1"
2) "val2"
3) "8.800000000000001"
127.0.0.1:6379> hdel hash f1
(integer) 1
127.0.0.1:6379> hkeys hash
1) "f2"
2) "f3"
|
角色hash 结构
role_1 | role_1 |
---|---|
field | value |
id | 001 |
roleName | oukele |
age | 19 |
1
2
3
4
5
6
7
8
9
10
11
12
13
|
127.0.0.1:6379> hmset role_1 id: 001 roleName: oukele age: 19
OK
127.0.0.1:6379> hgetall role_1
1) "id:"
2) "001"
3) "roleName:"
4) "oukele"
5) "age:"
6) "19"
127.0.0.1:6379> hget role_1 roleName:
"oukele"
127.0.0.1:6379> hlen role_1
(integer) 3
|
参考地址:http://redisdoc.com/