在讲解语法知识之前,教你如何掌握各种hash的基本潜规则,在不同的语言中,有点称之为hash、有的是map,但不管这么样,hash你可以看作是key-value一组的集合。我先将java中map的概念擅自的加入到redis的hash中,让我们更加容易的理解hash的潜规则:

一、hash潜规则

1、映射模型

值集合映射,键集合映射,Entry集合映射(key-value,有得称之为item(python))。

2、一般的方法列表

添加、删除、更新、判断键是否存在、对应映射模型的key集合、value集合、entry集合;

在其他语言中,基本上也包含上述的方法类型列表。

二、redis中的hash语法及其使用

1、如何添加hash表entry

# 添加一个元素到指定的hash表中,如果该hash表不存在,那么创建该hash表。
语法:hset [hash表名] [key] [value] # 创建一个user1 hash表,并添加key=name,value=51cto的entry
范例:hset user1 name 51cto

2、如何获取hash表元素数据

# 获取指定hash表的key对应的value值,如果不存在返回nil
语法:hget [hash表名] [key]# 返回51cto
范例:hget user1 name

3、如何删除hash表元素

# 删除指定hash表的entry
语法:hdel [hash表名] [key1][key2]...[keyn]# 删除user1中的name entry
范例:hdel user1 name

4、如何判断hash表元素是否存在

# 判断hash表中是否存在指定key的实体
语法:hexists [hash表名] [key]# 如果name存在,那么返回1,否则返回0
范例:hexists user1 name

5、如何获取hash表的大小

# 获取指定hash表的长度(大小)
语法:hlen [hash表名]# 获取user1 hash表的长度
范例:hlen user1

6、hash表的映射模型

# 值映射模型:获取hash所有的值集合
语法:hvals [hash表名] # 键映射模型:获取hash所有的键集合
语法:hkeys [hash表名]# 实体映射模型:获取hash所有的实体集合
语法:hgetall [hash表名]

7、其他辅助工具

# 自增
语法:hincrby [hash表名] [key] [步长]# 让user1中的age 对应的value自增1
范例:hincrby user1 age 1

注:本文讲述的仅仅是redis相关的hash语法。

转载于:https://blog.51cto.com/793404905/1548164

[redis数据结构]之 hash类型相关推荐

  1. Redis工作笔记-Hash类型

    目录 概述 操作 概述 Redis中的Hash类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储键值对象的信息.如Username.Password和Ag ...

  2. Redis数据类型(hash 类型)

    Redis数据类型(hash 类型) hash 类型及操作 ① 概述 ② 相关命令列表 ③ 命令示例 hash 类型及操作 ① 概述 Redis中的Hash类型可以理解是具有String Key和St ...

  3. Redis数据结构之——hash

    写在前面 以下内容是基于Redis 6.2.6 版本整理总结 一.Redis 数据结构hash的编码格式 Redis中hash数据类型使用了两种编码格式:ziplist(压缩列表).hashtable ...

  4. redis hash key mysql_Linux取得Redis数据库中hash类型的所有feild或者所有value

    redis非常好用,但是对于习惯了关系型数据库的人来说,查询起来还是比较麻烦,尤其是对于一个hash类型的key,想取得所有的feild域 Redis非常好用,但是对于习惯了关系型数据库的人来说,查询 ...

  5. linux hase数据,Linux取得Redis数据库中hash类型的所有feild或者所有value

    Redis非常好用,但是对于习惯了关系型数据库的人来说,查询起来还是比较麻烦,尤其是对于一个hash类型的key,想取得所有的feild域,官方并没有直接的接口,但可以通过linux来帮助实现,方法如 ...

  6. linux取得redis数据库中hash类型的所有feild或者所有value

    redis非常好用,但是对于习惯了关系型数据库的人来说,查询起来还是比较麻烦,尤其是对于一个hash类型的key,想取得所有的feild域,官方并没有直接的接口,但可以通过linux来帮助实现,方法如 ...

  7. Redis数据结构之hash

    对象类数据的存储如果具有较频繁的更新需求操作会显得笨重,这里我们可以用redis的hash数据类型解决. 一.hash类型 新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息 需 ...

  8. Redis基础命令(Hash类型)对field进行的操作

    目录 Hash类型 Hash与String比较 Hash类型的常见命令(显而易见,在String命令前加入H就是Hash的命令) 1.HSET key field  value:添加或修改hash类型 ...

  9. redis数据结构hash

    Redis数据结构之hash Hash存储结构 Hash是一个string 类型的field和value的映射表.Hash特别适合存储对象,相对于将对象的每个字段存成单个string 类型.一个对象存 ...

最新文章

  1. 如何摧毁一个 Python 程序员?
  2. 【转】Linux查看物理CPU个数、核数、逻辑CPU个数
  3. Android消息机制——时钟显示和异步处理工具类(AsyncTask)
  4. 全国大学生电工数学建模竞赛赛题_A
  5. 安卓创建第一个工具类
  6. js(function(){alert(‘’‘)})
  7. react-native 打包apk 并解决 图片 不出现问题
  8. 简述linux中动态库和静态库的制作调用流程
  9. 基于beego一键创建RESTFul应用
  10. 设计模式-Singleton
  11. A3 没有装入任何送纸器
  12. python正确的输入语句_Python If语句If输入是某个字符串
  13. 10001_关于window10下其它主机无法ping通本地的设置
  14. java doubke类型转换为String_Java的基本数据类型你知道吗?
  15. PostGIS批量导入导出shapefile文件
  16. js 打开选择本地文件对话框 及 获取选择文件中的内容
  17. Docker - Dockerfile之FROM、ARG、LABEL、MAINTAINER、RUN、CMD指令详解
  18. Java+Jsp+MySQL高校选课系统设计与实现(附源码下载地址)
  19. 苹果开发者账户创建流程
  20. CSS盒子模型学习-02

热门文章

  1. 《BI那点儿事》数据流转换——派生列
  2. win7重装系统时,使用PE工具箱进入系统看到的“C盘变成0.2G,D盘变成48G左右”这是什么回事?...
  3. CodeIgniter笔记3
  4. SQL Server基本函数
  5. Serial Old收集器和Parallel Old收集器
  6. PHP 8.0 源码编译安装 JIT 尝鲜
  7. RabbitMq(八) SpringBoot整合RabbitMQ 生产者代码实现
  8. java8的spliterator
  9. 为什么用java开发app_安卓开发为什么选择用Java语言
  10. python 碎片图像拼接_python实现图像拼接