【Redis】Redis常用命令之Hash

1.hset:设置hash中指定的字段(field)的值(value)。

HSET key field value [field value ...]

时间复杂度:插⼊⼀组field为O(1),插⼊N组field为O(N)。
返回值:添加的字段的个数。
2.hget:获取hash中指定字段的值

HGET key field

时间复杂度:O(1),返回值:字段对应的值或者nil。
在这里插入图片描述
3.hexists:判断hash中是否有指定的字段

HEXISTS key field

时间复杂度:O(1),返回值:1表示存在,0表示不存在。
4.hdel:删除hash中指定的字段。

HDEL key field [field ...]

时间复杂度:删除⼀个元素为O(1),删除N个元素为O(N)。
返回值:本次操作删除的字段个数。
在这里插入图片描述
5.hkeys:获取hash中的所有字段。

HKEYS key

时间复杂度:O(N),N为field的个数,返回值:字段列表。
6.hvals:获取hash中的所有的值。

HVALS key

时间复杂度:O(N),N为field的个数。返回值:所有的值。
7.hgetall:获取hash中的所有字段以及对应的值。

HGETALL key

时间复杂度:O(N),N为field的个数,返回值:字段和对应的值。
在这里插入图片描述
8.hmget:⼀次获取hash中多个字段的值。

HMGET key field [field ...]

时间复杂度:只查询⼀个元素为O(1),查询多个元素为O(N),N为查询元素个数。返回值:字段对应的值或者nil。
9.获取hash中的所有字段的个数。

HLEN key

时间复杂度:O(1),返回值:字段个数。
在这里插入图片描述
10.hsetnx:在字段不存在的情况下,设置hash中的字段和值。

HSETNX key field value

时间复杂度:O(1),返回值:1表示设置成功,0表示失败。
在这里插入图片描述
11.hincrby:将hash中字段对应的数值添加指定的值。

HINCRBY key field increment
HINCRBYFLOAT key field increment   //hincrby的浮点数版本

时间复杂度:O(1),返回值:该字段变化之后的值。
在这里插入图片描述
注意:在使⽤hgetall时,如果哈希元素个数⽐较多,会存在阻塞Redis的可能。如果只需要获取部分field,可以使⽤hmget,如果⼀定要获取全部field,可以尝试使⽤hscan命令,该命令采⽤渐进式遍历哈希类型。
总结:

命令解释时间复杂度
hset key field value设置field的值是valueO(1)
hget key field获取field的value值O(1)
hdel key field [field…]删除fieldO(n),n是field的个数
hlen key计算field的个数O(1)
hgetall key获取所有的field-valueO(n),n是field的个数
hmget field [field …]批量获取field的valueO(n),n是field的个数
hmset field value [field value …]批量设置field-valueO(n),n是field的个数
hexists key field判断 field 是否存在O(1)
hkeys key获取所有的 fieldO(n),n是field的个数
hvals key获取所有的 valueO(n),n是field的个数
hsetnx key field value设置值,但必须在 field 不存在时才能设置成功O(1)
hincrby key field n对应 field-value +nO(1)
hincrbyfloat key field n对应 field-value +nO(1)
hstrlen key field计算 value 的字符串⻓度O(1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/276144.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL删除数据 文件大小不变的原因以及处理空洞问题

数据删除流程 InnoDB 里的数据都是用 B 树的结构组织的。 假设,我们要删掉 R4 这个记录,InnoDB 引擎只会把 R4 这个记录标记为删除。如果之后要再插入一个 ID 在 300 和 600 之间的记录时,可能会复用这个位置。但是,磁盘文件的大…

Elastic Agent 的安装及使用

概述 Elastic Agent是Elastic Stack中的一个全新组件,旨在简化和统一监控和集成管理流程。它是一个轻量级的代理,可以部署到各种不同类型的主机和容器中,用于收集系统指标、日志和事件数据,并将其发送到Elasticsearch进行存储和分…

Python网络基础爬虫-python基本语法

文章目录 逻辑语句if,else,elifforwhile异常处理 函数与类defpassclass 逻辑语句 熟悉C/C语言的人们可能很希望Python提供switch语句,但Python中并没有这个关键词,也没有这个语句结构。但是可以通过if-elif-elif-…这样的结构代替,或者使用字…

挑战OpenAI的新模型免费上线,40%计算量性能逼近GPT-4

据介绍,Inflection-2.5 将强大的 LLM 能力与 Inflection 标志性的「同理心微调」结合在一起,兼具高情商与高智商,可联网获取事实信息,其性能可与 GPT-4、Gemini 等领先大模型相媲美。 本周四,美国 AI 创业公司 Inflection AI 正式发布新一代大语言模型 Inflection-2.5。 …

福派斯猫粮的适口性有何特点?

亲爱的朋友们,今天我想和大家分享一下福派斯猫粮的适口性特点。作为一位养猫多年的铲屎官,我深知猫粮的适口性对于猫咪的健康和幸福是多么重要。那么,福派斯猫粮在这方面究竟有何独到之处呢? 1️⃣ 首先,福派斯猫粮的口…

分类预测 | Matlab实现GSWOA-KELM混合策略改进的鲸鱼优化算法优化核极限学习机的数据分类预测

分类预测 | Matlab实现GSWOA-KELM混合策略改进的鲸鱼优化算法优化核极限学习机的数据分类预测 目录 分类预测 | Matlab实现GSWOA-KELM混合策略改进的鲸鱼优化算法优化核极限学习机的数据分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 GSWOA-KELM分类&#xff0…

sqllab第十九关通关笔记

知识点: 错误注入 最大长度为32位;如果目标长度>32时,需要利用截取函数进行分段读取referer注入 insert语句update语句 通过admin admin进行登录发现页面打印除了referer字段的信息 这应该是一个referer注入 首先进行测试一下 构造payl…

Windows安装Kibana之保姆级教程

Kibana 安装 介绍:一款开源的数据分析和可视化平台,可对Elasticsearch 索引中的数据进行搜索、查看、交互操作;可理解为 Elasticsearch 的web管理后台 下载:点击https://www.elastic.co/cn/downloads/past-releases#kibana-->…

探索编程新纪元:Code GeeX、Copilot与通义灵码的智能辅助之旅

在人工智能技术日新月异的今天,编程领域的革新也正以前所未有的速度推进。新一代的编程辅助工具,如Code GeeX、Copilot和通义灵码,正在重塑开发者的工作流程,提升编程效率,并推动编程教育的普及。本文将深入探讨这三款…

2023 收入最高的十大编程语言

本期共享的是 —— 地球上目前已知超过 200 种可用的编程语言,了解哪些语言在 2023 为开发者提供更高的薪水至关重要。 过去一年里,DevJobsScanner 分析了来自地球各地超过 1000 万个开发职位空缺,辅助我们了解市场,以及人气最高…

SpringMVC请求、响应和拦截器的使用

SpringMVC请求 RequestMapping注解 RequestMapping注解的作用是建立请求URL和处理方法之间的对应关系 RequestMapping注解可以作用在方法和类上 1. 作用在类上:第一级的访问目录 2. 作用在方法上:第二级的访问目录 3. 细节:路径可以不编写…

基于大语言模型(LLM)的表格理解任务探索与实践

大语言模型(LLMs)的发展日新月异,为表格理解任务带来了新的可能性。表格理解任务,如基于表格的问答和表格事实验证,要求从自由形式的文本和半结构化的表格数据中提取深层次的语义信息。与泛化的文本推理任务不同&#…

外包干了5天,技术明显退步。。。。。

先说一下自己的情况,本科生,19年通过校招进入南京某软件公司,干了接近2年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了2年的功能测试&…

深入理解TCP的四次分手过程

文章目录 深入理解TCP的四次分手过程四次分手的意义四次分手的工作原理四次分手的重要性实际应用中的考虑结论补充:TIME_WAIT在哪一步?TIME_WAIT状态的目的TIME_WAIT状态的影响 深入理解TCP的四次分手过程 在网络通信中,TCP(传输控制协议)确…

GoLang:云原生时代致力于构建高性能服务器的后端语言

Go语言的介绍 概念 Golang(也被称为Go)是一种编程语言,由Google于2007年开始设计和开发,并于2009年首次公开发布。Golang是一种静态类型、编译型的语言,旨在提供高效和可靠的软件开发体验。它具有简洁的语法、高效的编…

电商场景下 ES 搜索引擎的稳定性治理实践

继上文在完成了第一阶段 ES 搜索引擎的搭建后,已经能够实现对千万级别的商品索引的读写请求的支持。目前,单机房读流量在 500~1000 QPS 之间,写流量在 500 QPS 左右。 但随着业务的发展,问题也逐渐开始暴露&#xff0…

2.MongoDB与关系数据库对比

MongoDB的简单操作与比较 与关系数据库对比 MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。它们各有各的优点,来看看他们之…

AttributeError: cannot assign module before Module.__init__() call

原因 调用了自定义的类,但是在自定义的类的__init__函数下面没有写super( XXX, self ).init() 错误案例 import torch import torch.nn as nnclass SelfAttention(nn.Module):""" Self-Attention """def __init__(self, n_head, d…

海外媒体宣发套餐推广:如何选择最佳方案-华媒舍

在信息时代,传播和宣传已经成为各个行业发展的关键部分。尤其对于拓展国际市场的企业来说,海外媒体宣发更是至关重要。由于各种原因,很多企业在选择海外媒体宣发套餐时感到困惑。本文将为您介绍如何选择最佳的海外媒体宣发方案。 1.了解目标市…

mysql数据库备份学习笔记

数据库备份 方法1 物理备份:xtrabackup 方法2 逻辑备份 mysqldump 参考备份与恢复的方法: 【MySql】Mysql之备份与恢复_mysql数据库备份与还原-CSDN博客 可以借鉴的物理备份: 思路是 先做一次全量备份,然后每天做一次增量备份…