redis基础——hash

哈希就类似于java中的map结构,只不过给这个map指定了一个key,因此一个key中可以存储多个键值对

1.hset

 hset user name wml
(integer) 1

结构:key field value

2.hget

127.0.0.1:6379> hget user name
"wml"

hget +key +field

3.Hmset

一次设置多个字段

127.0.0.1:6379> hmset user name wml age 18 address js
OK

语法:

hmset key field1 value1 field2 value2 field3 values3 …

4.hmget

一次获取某个key的多个字段值

127.0.0.1:6379> hmget user name age address
1) "wml"
2) "18"
3) "js"

hmget +field1 +filed2+filed3…

如果不存在显示nil

5.hdel

删除字段。可以一次删除多个field

127.0.0.1:6379> hdel user name age
(integer) 2

127.0.0.1:6379> hmget user age name address
1) (nil)
2) (nil)
3) "js"

6.hsetnx

同setnx原理一样,filed存在,什么都不做,field不存在,则设置值

127.0.0.1:6379> hmget user name age address
1) (nil)
2) (nil)
3) "js"
127.0.0.1:6379> hsetnx user age 18
(integer) 1
127.0.0.1:6379> hsetnx user name wml
(integer) 1
127.0.0.1:6379> hmget user name age address
1) "wml"
2) "18"
3) "js"

7.hvals

127.0.0.1:6379> hvals user
1) "js"
2) "18"
3) "wml"

返回key中所有的值

8.hkeys

返回key中所有的field

127.0.0.1:6379> hkeys user
1) "address"
2) "age"
3) "name"

9.hGetAll

127.0.0.1:6379> hgetall user
1) "address"
2) "js"
3) "age"
4) "18"
5) "name"
6) "wml"

获得key中所有的键值对

10.hexists

127.0.0.1:6379> hexists user age
(integer) 1
127.0.0.1:6379> hexists user haha
(integer) 0

如果key中存在目标field,则返回1,否则返回0

11.HIncrBy

同incrby,目标filed不存在,则创建新的field然后增长指定值,如果存在,则加上指定值。

hincrby key filed 数字

127.0.0.1:6379> hincrby user age 10
(integer) 28
127.0.0.1:6379> hget user age
"28"

12.hlen

127.0.0.1:6379> hlen user
(integer) 3

返回key中的长度,即键值对数量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值