Redis基础教程-数据类型hash命令之hset与hsetnx的基本用法

hsetnx和hset功能有些相似,hsetnx也可以设置key的指定field的值的。和hset的区别是hsetnx只会在key 不存在的时候进行设置,如果key存在则不会进行任何操作的。命令格式hsetnx key field value

我们给user_2设置age和sex

127.0.0.1:6379> hsetnx user_2 age 35
 (integer) 1
 127.0.0.1:6379> hsetnx user_2 sex male
 (integer) 1
 127.0.0.1:6379> hget user_2 age
 "35"
 127.0.0.1:6379> hgetuser_2 sex
 (error) ERR unknown command hgetuser_2, with args beginning with: sex, 
 127.0.0.1:6379> hget user_2 sex
 "male"

可以看到age和sex都设置成功了,我们来更改下age和sex的值,看下是否能修改成功

127.0.0.1:6379> hsetnx user_2 age 45
 (integer) 0
 127.0.0.1:6379> hsetnx user_2 sex female
 (integer) 0
 127.0.0.1:6379> hget user_2 age
 "35"
 127.0.0.1:6379> hget user_2 sex
 "male"

有没有发现后面设置的45和female都没有生效哦。通过hsetnx的返回值可以知道某个key是否存在。当然也可以使用exists命令来判断key是否存在

发表评论

邮箱地址不会被公开。 必填项已用*标注