90、Redis 的 value 所支持的数据类型(String、List、Set、Zset、Hash)---->Hash 相关命令
本次讲解要点:
Hash 相关命令:是指value中的数据类型
启动redis服务器:
打开小黑窗:
C:\Users\JH>e:
E:>cd E:\install\Redis6.0\Redis-x64-6.0.14\bin
E:\install\Redis6.0\Redis-x64-6.0.14\bin>redis-server.exe redis.windows.conf
dir 查看该文件夹里面的所有文件
启动redis客户端:
小黑窗:redis-cli
★ Redis的数据类型(都是针对Redis的value而言)
redis和map差不多。
Map 只能保存在内存中,
redis可以保存在磁盘。
Redis的key都是String
▲ value支持如下5种数据类型:
String: 最基本的数据类型,可保存任何的数据。
List: 元素是String的有序集合,集合内的元素可以重复。
Set: 元素是String的无序集合,集合内的数据不能重复。
Zset: 元素是String的有序集合,集合内的数据不能重复。
Hash: 也是key-value集合(类似Java的Map),key和value都是String类型的数据。这种类型主要用于保存对象。
Redis为不同数据类型提供了不同的操作命令,因此特定类型的数据需要使用对应类型的命令来执行操作。
★ Hash相关的命令
Hash类型是一个key和value都是String类型的key-value对。
(这句话我觉得应该是只有value才是String类型的key(field)-value对,key的话就只是key而已,不是key-value对)
key是不允许重复的。但value是可以重复的。
Hash类型适合存储对象。每个Hash最多可存储2^32 - 1个key-value对
关于命令中的参数的说明,其中key相当于是hash对象的名字,而field才是该hash对象中的key。
field 就是 value 里面的 键值对里面的key
HDEL key field [field …]: 删除Hash对象中一个或多个key-value对。此处的field参数其实代表Hash对象中的key,后面的field参数皆如此。
HEXISTS key field: 判断Hash对象指定的key是否存在。
HGET key field: 获取Hash对象中指定key对应的value。
HGETALL key: 获取Hash对象中所有key-value对。
HINCRBY key field increment: 为Hash对象指定的key增加increment。
它也要要求key指定的hash对象的field所对应value必须能转换成数值。
HINCRBYFLOAT key field increment: HINCRBY的浮点数版本,支持小数。
HKEYS key: 获取Hash对象中所有key。
HLEN key: 获取Hash对象中key-value对的数量。
HMGET key field [field…]: HGET的加强版,可同时获取多个key对应的value。
HSET key field value: 为Hash对象设置一组key-value对。如果field对应的key已经存在,
新设置的value将会覆盖原有的value。
HMSET key field value [field value …]: HSET的加强版,可同时设置多个key-value对。
HSETNX key field value: HSET的安全版本,只有当field对应的key不存在时,才能设置成功。
该方法保证不会发生覆盖。
HSTRLEN key field: 获取Hash对象指定key对应value的字符串长度。
HVALS key: 获取Hash对象所有的value。
HSCAN key cursor [MATCH pattern] [COUNT count]: 遍历Hash对象。此处的count不起作用。
演示
HSET key field value: 为Hash对象设置一组key-value对。如果field对应的key已经存在,
新设置的value将会覆盖原有的value。
经测试,hset 也可以设置多个 key-value 对


HMSET key field value [field value …]: HSET的加强版,可同时设置多个key-value对。
结合上面的图,可以看到用 hmset 设置多个key-value 对时,如果field对应的key已经存在,
新设置的value将会覆盖原有的value

field 不能重复,但是 field 对应的 value 可以重复

field重复的话,数据就会进行覆盖

HSETNX key field value: HSET的安全版本,只有当field对应的key不存在时,才能设置成功。
该方法保证不会发生覆盖。

HGET key field: 获取Hash对象中指定key对应的value。
关于命令中的参数的说明,其中key相当于是hash对象的名字,而field才是该hash对象中的key。


HMGET key field [field…]: HGET的加强版,可同时获取多个key(指的是field)对应的value。

hget 就不行,不能获取多个field的value

HGETALL key: 获取Hash对象中所有key-value对。
这个就是通过key获取value了,而不是通过field获取value

HDEL key field [field …]: 删除Hash对象中一个或多个key-value对。此处的field参数其实代表Hash对象中的key,后面的field参数皆如此。

HEXISTS key field: 判断Hash对象指定的key是否存在。

HINCRBY key field increment: 为Hash对象指定的key增加increment。
它也要要求key指定的hash对象的field所对应value必须能转换成数值。

HINCRBYFLOAT key field increment: HINCRBY的浮点数版本,支持小数。并会返回增加后的值

HKEYS key: 获取Hash对象中所有key。

HLEN key: 获取Hash对象中key-value对的数量。

HSTRLEN key field: 获取Hash对象指定key对应value的字符串长度。

HVALS key: 获取Hash对象所有的value。

HSCAN key cursor [MATCH pattern] [COUNT count]: 遍历Hash对象。此处的count不起作用。

相关文章:
90、Redis 的 value 所支持的数据类型(String、List、Set、Zset、Hash)---->Hash 相关命令
本次讲解要点: Hash 相关命令:是指value中的数据类型 启动redis服务器: 打开小黑窗: C:\Users\JH>e: E:>cd E:\install\Redis6.0\Redis-x64-6.0.14\bin E:\install\Redis6.0\Redis-x64-6.0.14\bin>redis-server.exe red…...
我开源了一个加密算法仓库,支持18种算法!登录注册业务可用!
文章目录 仓库地址介绍安装用法SHA512HMACBcryptScryptAESRSAECC 仓库地址 仓库地址:https://github.com/palp1tate/go-crypto-guard 欢迎star和fork! 介绍 此存储库包含用 Go 编写的全面的密码哈希库。该库支持多种哈希算法,它允许可定制…...
FPGA设计时序约束二、输入延时与输出延时
目录 一、背景 二、set_input_delay 2.1 set_input_delay含义 2.2 set_input_delay参数说明 2.3 使用样例 三、set_output_delay 3.1 set_output_delay含义 3.2 set_output_delay参数说明 3.3 使用样例 四、样例工程 4.1 工程代码 4.2 时序报告 五、参考资料 一、…...
电阻的基础与应用
文章目录 电阻的基础与应用电阻的介绍与分类电阻介绍电阻的分类碳膜/金属膜电阻厚膜/薄膜电阻功能性电阻(光敏/热敏/压敏)特殊电阻(绕线电阻/水泥电阻/铝壳电阻) 电阻的主要厂家与介绍国外厂家VISHAY(威世)KOA(兴亚)Kyocera(京瓷)…...
5.html表格
<table><tr><th>列1标题</th><th>列2标题</th><th>列3标题</th></tr><tr><td>行1列1</td><td>行1列2</td><td>行1列3</td></tr><tr><td>行2列1</td>…...
飞桨EasyDL-Mac本地部署离线SDK-Linux集成Python
前言:本文对使用飞桨EasyDL桌面版实现本地部署物体检测做一下说明 一、训练模型 如何使用飞桨EasyDL桌面版这里就不再赘述,直接参照官方文档进行物体检测模型训练。 飞桨EasyDL桌面版-用零代码开发实现物体检测https://ai.baidu.com/ai-doc/EASYDL/Tl2…...
【kubernetes】Kubernetes中的DaemonSet使用
目录 1 为什么需要DaemonSet2 DaemonSet的Yaml的关键字段3 DaemonSet的使用4 一种自行控制Pod更新的方式5 总结 1 为什么需要DaemonSet Deployment可以用于部署无状态的应用,例如系统的接口层或者逻辑层,而多个Pod可以用于负载均衡和容灾。如果有这样一…...
《 新手》web前端(axios)后端(java-springboot)对接简解
文章目录 <font color red>1.何为前后端对接?2.对接中关于http的关键点2.1. 请求方法2.2. 请求参数设置简解: 3.对接中的跨域(CROS)问题**为什么后端处理跨域尽量在业务之前进行?**3.总结 1.何为前后端对接? “前后端对接” 是指前端和后端两个…...
第七章 查找 十、散列查找
一、哈希表(散列表) 哈希表的数据元素的关键字与其存储地址直接相关。 二、解决冲突的方法 三、散列表中元素的查找 总共对比了3个关键字,所以查找长度为3. 四、查找效率计算 (1)成功的概率 需要对比一次的关键字为…...
第一章 C语言知识补充
求字节数运算符:sizeof 强制类型转换运算符:(类型) 下标运算符:[ ] 函数调用运算符:( ) 算术移位指令 算术移位指令有:算术左移SAL和算术右移SAR。算术移位指令的功能描述如下:…...
【Book And Paper 】
【paper Interactive Segmentation of Radiance Fields 算法设计: 电子版...
计算机竞赛 深度学习疲劳检测 驾驶行为检测 - python opencv cnn
文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习加…...
代码随想录 动态规划 13
300. 最长递增子序列 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子…...
lv6 嵌入式开发-Flappy bird项目
目录 1 项目功能总结 2 知识储备: 3 项目框图 4 Ncurses库介绍 做Flappy bird项目有什么用? 1. 复习、巩固c语言知识 2. 培养做项目的逻辑思维能力 3. 具备开发简单小游戏的能力 学会了Flappy bird项目,贪吃蛇和推房子两款小游戏也可…...
【Java】方法重写
概述 子类中出现了和父类一模一样的方法 当子类需要父类的功能,而功能主体中,子类有自己独特的内容,就可以通过重写父类中的方法,这样即延续了父类的功能,又定义了自己的特有内容 Override 是一个注解,可以…...
艺术表现形式
abstract expressionism 抽象表现主义 20世纪中期的一种艺术运动,包括多种风格和技巧,特别强调艺术家通过非传统和通常非具象的手段表达态度和情感的自由。 抽象表现主义用有力的笔触和滴落的颜料来表达情感和自发性。 简单地结合“abstract expression…...
PHP 反序列化漏洞:手写序列化文本
文章目录 参考环境序列化文本Scalar Type整数浮点数布尔值字符串 Compound Type数组数据结构序列化文本 对象数据结构序列化文本 Special TypeNULL数据结构序列化文本 手写序列化文本过程中的注意事项个数描述须于现实相符序列化文本前缀的大小写变化符号公共属性 参考 项目描…...
react.js在visual code 下的hello World
想学习reacr.js ,就开始做一个hello world。 我的环境是visual code ,所以我找这个环境下的例子。参照: https://code.visualstudio.com/docs/nodejs/reactjs-tutorial 要学习react.js ,还得先安装node.js,我在visual …...
CocosCreator3.8研究笔记(二十四)CocosCreator 动画系统-动画编辑器实操-关键帧实现动态水印动画效果
上一篇,我们介绍了动画编辑器相关功能面板说明,感兴趣的朋友可以前往阅读: CocosCreator3.8研究笔记(二十三)CocosCreator 动画系统-动画编辑器相关功能面板说明。 熟悉了动画编辑器的基础操作,那么再使用动…...
第1篇 目标检测概述 —(3)YOLO系列算法
前言:Hello大家好,我是小哥谈。YOLO(You Only Look Once)系列算法是一种目标检测算法,主要用于实时物体检测。相较于传统的目标检测算法,YOLO具有更快的检测速度和更高的准确率。YOLO系列算法的核心思想是将…...
ChatGPT提示工程进阶实战(故事化表达失效的7大隐形陷阱)
更多请点击: https://kaifayun.com 第一章:故事化表达失效的底层认知重构 当工程师在技术文档中反复使用“用户点击按钮后,系统就像一位耐心的向导,带他走过三步旅程”这类修辞时,信息熵并未降低——反而因隐喻失准而…...
掌握Sunshine虚拟手柄配置:实现完美游戏控制体验
掌握Sunshine虚拟手柄配置:实现完美游戏控制体验 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine作为自托管的游戏串流服务器,其虚拟手柄配置功能是…...
Fastboot Enhance:革新Android设备管理的智能图形化解决方案
Fastboot Enhance:革新Android设备管理的智能图形化解决方案 【免费下载链接】FastbootEnhance A user-friendly Fastboot ToolBox & Payload Dumper for Windows 项目地址: https://gitcode.com/gh_mirrors/fa/FastbootEnhance 你是否曾为Android设备的…...
Windows安卓应用安装器:APK Installer完整使用指南
Windows安卓应用安装器:APK Installer完整使用指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在Windows电脑上直接运行安卓应用,享受大屏幕…...
英雄联盟终极自动化工具:5分钟快速上手League Akari完整指南
英雄联盟终极自动化工具:5分钟快速上手League Akari完整指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 还在为繁琐的游戏操作…...
Heightmapper:零代码创作3D地形,5分钟从地图到模型的神器
Heightmapper:零代码创作3D地形,5分钟从地图到模型的神器 【免费下载链接】heightmapper interactive heightmaps from terrain data 项目地址: https://gitcode.com/gh_mirrors/he/heightmapper 还在为3D地形建模发愁吗?Heightmapper…...
小红书下载终极指南:5分钟掌握无水印批量下载技巧
小红书下载终极指南:5分钟掌握无水印批量下载技巧 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接…...
百度网盘直链解析技术实现与高速下载架构设计
百度网盘直链解析技术实现与高速下载架构设计 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 在云存储服务日益普及的今天,百度网盘作为国内用户量最大的云存储平台…...
保姆级教程:Win10到Win11,VMware虚拟机无损迁移全流程(含GRUB修复)
从Win10到Win11:VMware虚拟机无损迁移与GRUB修复终极指南当你拿到崭新的Win11电脑,最头疼的莫过于如何将旧电脑上那些精心配置的VMware虚拟机环境完整迁移过来。特别是那些承载着重要开发环境或测试数据的Linux虚拟机,稍有不慎就可能面临系统…...
不只是安装:用Carla+Win11快速搭建你的第一个自动驾驶测试场景(手把手教程)
从零到一:用Carla在Win11上构建自动驾驶测试场景的实战指南当你第一次启动Carla仿真环境,看到那个空荡荡的数字化城市时,是否感到既兴奋又迷茫?作为一款开源的自动驾驶仿真平台,Carla的真正价值不在于安装过程…...
