欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Redis hash(哈希)相关命令

程序员文章站 2022-07-09 21:13:53
Redis hash可储存多个键值对,适合储存对象的属性。 1、hset key fieldName fileValue //hset即hash set,set这里是设置的意思。往hash中添加一个字段(键值对) 示例: hset score zhangsan 90 //score是hash的名称, ......

 

redis hash可储存多个键值对,适合储存对象的属性。

 

1、hset key fieldname filevalue    //hset即hash set,set这里是设置的意思。往hash中添加一个字段(键值对)

示例:

 hset score zhangsan 90     //score是hash的名称,zhangsan 90是一个键值对。若zhangsan这个字段名之前不存在,则添加成功返回1。

 hset score lisi 85     //一个hash可储存多个键值对(40多亿)。

 hset score lisi 100   //之前这个hash中已存在lisi这个字段名,会覆盖原来的字段值,返回0.

 

 

2、hsetnx key fieldname fieldvalue    //多了后缀nx,同上,只是如果这个hash中已存在fieldname,则不执行操作(不覆盖原来的值),此时返回0。即当这个hash中fieldname不存在时才添加字段。

 

3、hmset key filename1 fieldvalue1 fieldname2 fieldvalue2 ......   //同时添加多个字段。hmset即hash multiple set,因为是set所以字段已存在时会覆盖原有的值。

 

 

 

4、hget key fieldname   //获取指定字段的值

 

5、hmget key fieldname1 fieldname2 .....    //同时获取一个或多个字段的值

 

6、hgetall key   //获取所有字段的值,会同时显示fieldname、fieldvalue。hgetall即hash get all。

 

 

 

7、hdel key fieldname1 fieldname2 ....   //删除一个或多个字段

 

8、hexists key fieldname   //检查该字段是否已存在,已存在则返回1,该fieldname不存在或key不存在,则返回0

 

 

 

9、hlen key    //获取hash中的字段(键值对)数量

 

10、hkeys  key    //获取hash中所有的feildname

 

11、hvals key   //获取hash中所有的fieldvalue

 

 

12、hscan key cursor [match pattern] [count count]      //迭代hash中的键值对

 

 

 

13、hincrby key fieldname acount    //将指定字段的值增加acount。原来的字段值、acount都要是整数,否则提示错误。

示例:

 hincrby score lisi 5   //返回操作后的字段值,假如之前lisi的值是80,则返回85

 hincrby score lisi -10   //acount支持负整数,即减。

 

14、hincrbyfloat  key fieldname acount    //同上,但是支持浮点数,就是说整数、浮点数都行。

 

 

说明:

  • 没有hincr这个命令(+1)
  • 没有提供hdecr命令(减)。
  • 都带有前缀h表示hash