Redis中的Hash
Hash
文章目录
- Hash
- 常用的命令
- hset/hget
- hmset/hmget
- hgetall
- hdel
- hlen 获取某个key内的全部数量
- hexists key
- hkeys/hvals
- hincrby
- hincrbyfloat
- hsetnx
redis hash 是一个string 类型的field(字段)和value(值)的映射表,hash特别适合用于存储对象。
常用的命令
命令 | 作用 |
---|---|
hset/hget | 存储/获取值 |
hmset/hmget | 存储所有的值和通过键一次性对应的值 |
hgetall key | 获取所有的键值 |
hdel key | 通过某个键删除某个值 |
hlen key | 获取某个key内的全部数量 |
hexists key | 在key里面的某一个值的key是否存在存在返回1,不存在返回0 |
hkeys/hvals | 诺列出全部key/value |
hincrby | 增加指定的整数 |
hincrbyfloat | 增加指定的小数 |
hsetnx | 不存在赋值,存在无效 |
hset/hget
存储/获取值
127.0.0.1:6379> hset user:001 id 11 name zs age 25
(integer) 3
127.0.0.1:6379> hget user:001 id
"11"
hmset/hmget
存储所有的值和通过键一次性对应的值
127.0.0.1:6379> hmset user:001 id 12 name zs age 25
OK
127.0.0.1:6379> hmget user:001 id name age
1) "12"
2) "zs"
3) "25"
hgetall
获取所有的键值
127.0.0.1:6379> hgetall user:001
1) "id"
2) "12"
3) "name"
4) "zs"
5) "age"
6) "25"
hdel
通过某个键删除某个值
127.0.0.1:6379> hgetall user:001
1) "id"
2) "12"
3) "name"
4) "zs"
5) "age"
6) "25"
127.0.0.1:6379> hdel user:001 age
(integer) 1
127.0.0.1:6379> hgetall user:001
1) "id"
2) "12"
3) "name"
4) "zs"
hlen 获取某个key内的全部数量
获取某个key内的全部数量
127.0.0.1:6379> hlen user:001
(integer) 2
127.0.0.1:6379> hgetall user:001
1) "id"
2) "12"
3) "name"
4) "zs"
hexists key
在key里面的某一个值的key是否存在存在返回1,不存在返回0
127.0.0.1:6379> hexists user:001 id
(integer) 1
127.0.0.1:6379> hexists user:001 sex
(integer) 0
hkeys/hvals
诺列出全部key/value
127.0.0.1:6379> hkeys user:001
1) "id"
2) "name"
127.0.0.1:6379> hvals user:001
1) "12"
2) "zs"
hincrby
增加指定的整数
127.0.0.1:6379> hgetall user:001
1) "id"
2) "12"
3) "name"
4) "zs"
127.0.0.1:6379> hincrby user:001 id 2
(integer) 14
127.0.0.1:6379> hgetall user:001
1) "id"
2) "14"
3) "name"
4) "zs"
hincrbyfloat
增加指定的小数
127.0.0.1:6379> hincrbyfloat user:001 id 0.5
"14.5"
127.0.0.1:6379> hgetall user:001
1) "id"
2) "14.5"
3) "name"
4) "zs"
hsetnx
不存在赋值,存在无效
127.0.0.1:6379> hsetnx user:001 email 1212@126.com
(integer) 1
127.0.0.1:6379> hsetnx user:001 email 1212@126.com
(integer) 0