redis学习笔记

Hash数据类型仍然是KV模式,但是v是一个键值对
1.hset/hget/hmset/hmget/hgetall/hdel

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
127.0.0.1:6379[6]> hset hash2 id 5
(integer) 1
127.0.0.1:6379[6]> hset hash2 age 77
(integer) 1
127.0.0.1:6379[6]> hset hash2 name liu
(integer) 1
127.0.0.1:6379[6]> hget hash2 id
"5"
127.0.0.1:6379[6]> hmset hash2 food xiangjiao drink coffer
OK
127.0.0.1:6379[6]> hmget hash2 id name age
1) "5"
2) "liu"
3) "77"
127.0.0.1:6379[6]> hgetall hash2
1) "id"
2) "5"
3) "age"
4) "77"
5) "name"
6) "liu"
7) "food"
8) "xiangjiao"
9) "drink"
10) "coffer"
127.0.0.1:6379[6]> hdel hash2 id
(integer) 1
127.0.0.1:6379[6]> hgetall hash2
1) "age"
2) "77"
3) "name"
4) "liu"
5) "food"
6) "xiangjiao"
7) "drink"
8) "coffer"

2.hlen:判断hash中元素的个数;hexists key 在key里面某个值的key

1
2
3
4
5
6
127.0.0.1:6379[6]> hlen hash2
(integer) 4
127.0.0.1:6379[6]> hexists hash2 id
(integer) 0
127.0.0.1:6379[6]> hexists hash2 age
(integer) 1

3.hkeys/hvals

1
2
3
4
5
6
7
8
9
10
11
127.0.0.1:6379[6]> hkeys hash2
1) "age"
2) "name"
3) "food"
4) "drink"
127.0.0.1:6379[6]> hvals hash2
1) "77"
2) "liu"
3) "xiangjiao"
4) "coffer"
127.0.0.1:6379[6]>

4.hincrby/hincrbyfloat //加上一个整数或者小数

1
2
3
4
5
6
127.0.0.1:6379[6]> hget hash2 age
"77"
127.0.0.1:6379[6]> hincrby hash2 age 3
(integer) 80
127.0.0.1:6379[6]> hincrbyfloat hash2 age 0.5
"80.5"

5.hsetnx //不存在则添加

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
127.0.0.1:6379[6]> hgetall hash2
1) "age"
2) "80.5"
3) "name"
4) "liu"
5) "food"
6) "xiangjiao"
7) "drink"
8) "coffer"
9) "id"
10) "8"
127.0.0.1:6379[6]> hsetnx hash2 id 2
(integer) 0
127.0.0.1:6379[6]> hsetnx hash2 num 2
(integer) 1