②【Hash】Redis常用数据类型:Hash [使用手册]

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~

个人主页:.29.的博客

学习社区:进去逛一逛~

Redis Hash

  • [②Redis Hash 操作命令汇总](#②Redis Hash 操作命令汇总)
      • [1. hset 设置一个或多个哈希表中字段的值](#1. hset 设置一个或多个哈希表中字段的值)
      • [2. hget 获取存储在hash表中指定字段的值](#2. hget 获取存储在hash表中指定字段的值)
      • [3. hmset 同时将多个field-value对设置到hash表的key中](#3. hmset 同时将多个field-value对设置到hash表的key中)
      • [4. hmget 获取多个hash表中指定字段的值](#4. hmget 获取多个hash表中指定字段的值)
      • [5. hgetall 获取hash表中指定key的所有域值对(字段和值)](#5. hgetall 获取hash表中指定key的所有域值对(字段和值))
      • [6. hdel 删除一个或多个hash表字段](#6. hdel 删除一个或多个hash表字段)
      • [7. hlen 获取hash表中字段的数量](#7. hlen 获取hash表中字段的数量)
      • [8. hexists 确定hash表key中的指定字段是否存在](#8. hexists 确定hash表key中的指定字段是否存在)
      • [9. hkeys 获取hash表key中所有的字段](#9. hkeys 获取hash表key中所有的字段)
      • [10. hvals 获取hash表key中所有字段的值](#10. hvals 获取hash表key中所有字段的值)
      • [11. hincrby 为指定字段的整数值加上增量值](#11. hincrby 为指定字段的整数值加上增量值)
      • [12. hincrbyfloat 为指定字段的浮点数值加上增量值](#12. hincrbyfloat 为指定字段的浮点数值加上增量值)
      • [13. hsetnx 为指定字段设置值(字段不存在为前提)](#13. hsetnx 为指定字段设置值(字段不存在为前提))

②Redis Hash 操作命令汇总


  • redis hash 是一个String类型的field(字段)和value(值)的映射表。
  • redis中每个hash可以存储2^32-1个键值对(40多亿)

1. hset 设置一个或多个哈希表中字段的值

hset key field value [field value ...]

bash 复制代码
# 设置哈希表h1中字段f1、f2、f3的值分别为v1、v2、v3
hset h1 f1 v1 f2 v2 f3 v3

2. hget 获取存储在hash表中指定字段的值

hget key field

bash 复制代码
# 获取哈希表h1中字段f1的值
hget h1 f1
# 获取哈希表h1中字段f2的值
hget h1 f2
# 获取哈希表h1中字段f3的值
hget h1 f3

3. hmset 同时将多个field-value对设置到hash表的key中

hmset key field value [field value ...]

bash 复制代码
# 同时将多个域值对存储到hash表的key------h2中
 hmset h2 f1 c++ f2 java f3 python f4 php

4. hmget 获取多个hash表中指定字段的值

hmget key field [field ...]

bash 复制代码
# 同时获取hash表的key------h2中多个字段的值
hmget h2 f1 f2 f3 f4

5. hgetall 获取hash表中指定key的所有域值对(字段和值)

hgetall key

bash 复制代码
# 获取hash表中h2的所有域值对
hgetall h2

6. hdel 删除一个或多个hash表字段

hdel key field [field ...]

bash 复制代码
# 删除hash表中h2的多个字段
 hdel h2 f1 f3

7. hlen 获取hash表中字段的数量

hlen key

bash 复制代码
# 获取hash表h1的字段数量
hlen h1
# 获取hash表h2的字段数量
hlen h2

8. hexists 确定hash表key中的指定字段是否存在

hexists key field

bash 复制代码
# 0代表不存在,1代表存在
hexists h1 f5
hexists h1 f1

9. hkeys 获取hash表key中所有的字段

hkeys key

bash 复制代码
# 获取hash表key:h1中的所有字段
hkeys h1

10. hvals 获取hash表key中所有字段的值

hvals key

bash 复制代码
# 获取hash表key:h1中的所有字段的值
hvals h1

11. hincrby 为指定字段的整数值加上增量值

hincrby key field increment

bash 复制代码
# 为hash表h3的f1字段值加9,返回的值计算后的值
hincrby h3 f1 9

12. hincrbyfloat 为指定字段的浮点数值加上增量值

hincrbyfloat key field increment

bash 复制代码
# 为hash表h3的f2字段值加3.3
hincrbyfloat h3 f2 3.3

13. hsetnx 为指定字段设置值(字段不存在为前提)

hsetnx key field value

bash 复制代码
# 字段不存在则赋值,字段存在了则无效。
hsetnx h1 f1 v11
hsetnx h1 f9 v9

相关推荐
VT.馒头几秒前
【力扣】2694. 事件发射器
前端·javascript·算法·leetcode·职场和发展·typescript
星火开发设计3 分钟前
命名空间 namespace:解决命名冲突的利器
c语言·开发语言·c++·学习·算法·知识
知识即是力量ol4 分钟前
深度解析:基于 JWT + Redis 白名单的双令牌高安全认证架构
redis·安全·架构
知无不研8 分钟前
选择排序算法
数据结构·算法·排序算法·选择排序
好学且牛逼的马8 分钟前
【Hot100|21-LeetCode 160. 相交链表】
算法·leetcode
爱学习的阿磊9 分钟前
C++中的策略模式应用
开发语言·c++·算法
我是黄骨鱼10 分钟前
【零基础学数据库|第二篇】MySql启动!!!
数据库·mysql
郝学胜-神的一滴10 分钟前
Python中的bisect模块:优雅处理有序序列的艺术
开发语言·数据结构·python·程序人生·算法
筵陌11 分钟前
算法:位运算
算法
陌上丨12 分钟前
什么是Redis的大Key和热Key?项目中一般是怎么解决的?
数据库·redis·缓存