Redis 哈希(Hash)基本操作(redis 哈希 数据结构)
mhr18 2024-11-14 16:24 34 浏览 0 评论
Redis 哈希(Hash)--基本操作
Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。
Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。
---------------------------------------------------------------------------------------
00HSET key field value 将哈希表 key 中的字段 field 的值设为 value 。
hset myhash filed1 aa
192.168.0.110:6379>hset user:1 name duhaozhao ---"user:1"作为一个key
(integer) 1
192.168.0.110:6379> hget user:1
(error) ERR wrong number of arguments for 'hget' command
192.168.0.110:6379> hget user:1 name
"duhaozhao"
01HGET key field 获取存储在哈希表中指定字段的值。
hget myhash filed1
1HDEL key field1 [field2]删除一个或多个哈希表字段
hdel myhash filed1
2HEXISTS key field查看哈希表 key 中,指定的字段是否存在。
hexists myhash field22
(integer) 1
4HGETALL key 获取在哈希表中指定 key 的所有字段和值
127.0.0.1:6379> hgetall hm_xl
1) "01"
2) "\"mx\""
3) "00"
4) "\"xx\""
5) "02"
6) "gaozhong"
7) "03"
8) "dazhuan"
5HINCRBY key field increment 为哈希表 key 中的指定字段的整数值加上增量 increment 。
hincrby myhash field3 1
(integer) 6
192.168.0.110:6379> hincrby myhash field3 10
(integer) 16
192.168.0.110:6379> hincrby myhash field3 -1
(integer) 15
6HINCRBYFLOAT key field increment 为哈希表 key 中的指定字段的浮点数值加上增量 increment 。
7HKEYS key 获取所有哈希表中的字段
192.168.0.110:6379>hkeys myhash
1) "field"
2) "field2"
3) "field21"
4) "field22"
8HLEN key 获取哈希表中字段的数量
127.0.0.1:6379> hlen hm_xl
(integer) 2
127.0.0.1:6379>
9HMGET key field1 [field2] 获取所有给定字段的值
hmget myhash field field2
10HMSET key field1 value1 [field2 value2 ] 同时将多个 field-value (域-值)对设置到哈希表 key 中。
hmset myhash field hello field2 world
12HSETNX key field value 只有在字段 field 不存在时,设置哈希表字段的值。
192.168.0.110:6379>hsetnx myhash field2 44
(integer) 0
192.168.0.110:6379> hsetnx myhash field24 44
(integer) 1
13HVALS key 获取哈希表中所有值。
hvals myhash
1) "hello"
2) "world"
3) "hello"
4) "world"
14HSCAN key cursor [MATCH pattern] [COUNT count] 迭代哈希表中的键值对。
SCAN cursor [MATCH pattern] [COUNT count]
SCAN命令是一个基于游标的迭代器, 这意味着命令每次被调用都需要使用上一次这个调用返回的游标作为该次调用的游标参数,
以此来延续之前的迭代过程,当SCAN命令的游标参数被设置为0时,服务器将开始一次新的迭代,
而当服务器向用户返回值为0的游标时,表示迭代已结束,HSCAN同SCAN命令相同
cursor - 游标。
pattern - 匹配的模式。
count - 指定从数据集里返回多少元素,默认值为 10 。
127.0.0.1:6379> hmset h00 k1 01 k2 02 k3 03 k4 04 k5 05 k6 06 k7 07
OK
127.0.0.1:6379> hmset h00 k8 08 k9 09 k10 10 k11 11 k12 12 k13 13 k14 14
OK
127.0.0.1:6379> hgetall h00
1) "k1"
2) "01"
3) "k2"
4) "02"
5) "k3"
6) "03"
7) "k4"
8) "04"
9) "k5"
10) "05"
11) "k6"
12) "06"
13) "k7"
14) "07"
15) "k8"
16) "08"
17) "k9"
18) "09"
19) "k10"
20) "10"
21) "k11"
22) "11"
23) "k12"
24) "12"
25) "k13"
26) "13"
27) "k14"
28) "14"
127.0.0.1:6379> hscan h00 0 match k1*#查看h00中字段以k开始的字段
1) "0"
2) 1) "k1"
2) "01"
3) "k10"
4) "10"
5) "k11"
6) "11"
7) "k12"
8) "12"
9) "k13"
10) "13"
11) "k14"
12) "14"
127.0.0.1:6379> hscan h00 0 match k*2#查看h00中字段以k开始,2结束的字段
1) "0"
2) 1) "k2"
2) "02"
3) "k12"
4) "12"
127.0.0.1:6379>
redis-5.0.10
2020-12-19
相关推荐
- 一文读懂Prometheus架构监控(prometheus监控哪些指标)
-
介绍Prometheus是一个系统监控和警报工具包。它是用Go编写的,由Soundcloud构建,并于2016年作为继Kubernetes之后的第二个托管项目加入云原生计算基金会(C...
- Spring Boot 3.x 新特性详解:从基础到高级实战
-
1.SpringBoot3.x简介与核心特性1.1SpringBoot3.x新特性概览SpringBoot3.x是建立在SpringFramework6.0基础上的重大版...
- 「技术分享」猪八戒基于Quartz分布式调度平台实践
-
点击原文:【技术分享】猪八戒基于Quartz分布式调度平台实践点击关注“八戒技术团队”,阅读更多技术干货1.背景介绍1.1业务场景调度任务是我们日常开发中非常经典的一个场景,我们时常会需要用到一些不...
- 14. 常用框架与工具(使用的框架)
-
本章深入解析Go生态中的核心开发框架与工具链,结合性能调优与工程化实践,提供高效开发方案。14.1Web框架(Gin,Echo)14.1.1Gin高性能实践//中间件链优化router:=...
- SpringBoot整合MyBatis-Plus:从入门到精通
-
一、MyBatis-Plus基础介绍1.1MyBatis-Plus核心概念MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提...
- Seata源码—5.全局事务的创建与返回处理
-
大纲1.Seata开启分布式事务的流程总结2.Seata生成全局事务ID的雪花算法源码3.生成xid以及对全局事务会话进行持久化的源码4.全局事务会话数据持久化的实现源码5.SeataServer创...
- Java开发200+个学习知识路线-史上最全(框架篇)
-
1.Spring框架深入SpringIOC容器:BeanFactory与ApplicationContextBean生命周期:实例化、属性填充、初始化、销毁依赖注入方式:构造器注入、Setter注...
- OpenResty 入门指南:从基础到动态路由实战
-
一、引言1.1OpenResty简介OpenResty是一款基于Nginx的高性能Web平台,通过集成Lua脚本和丰富的模块,将Nginx从静态反向代理转变为可动态编程的应用平台...
- 你还在为 Spring Boot3 分布式锁实现发愁?一文教你轻松搞定!
-
作为互联网大厂后端开发人员,在项目开发过程中,你有没有遇到过这样的问题:多个服务实例同时访问共享资源,导致数据不一致、业务逻辑混乱?没错,这就是分布式环境下常见的并发问题,而分布式锁就是解决这类问题的...
- 近2万字详解JAVA NIO2文件操作,过瘾
-
原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,转载请保留出处。从classpath中读取过文件的人,都知道需要写一些读取流的方法,很是繁琐。最近使用IDEA在打出.这个符号的时候,一行代...
- 学习MVC之租房网站(十二)-缓存和静态页面
-
在上一篇<学习MVC之租房网站(十一)-定时任务和云存储>学习了Quartz的使用、发邮件,并将通过UEditor上传的图片保存到云存储。在项目的最后,再学习优化网站性能的一些技术:缓存和...
- Linux系统下运行c++程序(linux怎么运行c++文件)
-
引言为什么要在Linux下写程序?需要更多关于Linux下c++开发的资料请后台私信【架构】获取分享资料包括:C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,fastdf...
- 2022正确的java学习顺序(文末送java福利)
-
对于刚学习java的人来说,可能最大的问题是不知道学习方向,每天学了什么第二天就忘了,而课堂的讲解也是很片面的。今天我结合我的学习路线为大家讲解下最基础的学习路线,真心希望能帮到迷茫的小伙伴。(有很多...
- 一个 3 年 Java 程序员 5 家大厂的面试总结(已拿Offer)
-
前言15年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...最终有幸去了网易。但是要...
- 多商户商城系统开发全流程解析(多商户商城源码免费下载)
-
在数字化商业浪潮中,多商户商城系统成为众多企业拓展电商业务的关键选择。这类系统允许众多商家在同一平台销售商品,不仅丰富了商品种类,还为消费者带来更多样的购物体验。不过,开发一个多商户商城系统是个复杂的...
你 发表评论:
欢迎- 一周热门
-
-
Redis客户端 Jedis 与 Lettuce
-
高并发架构系列:Redis并发竞争key的解决方案详解
-
redis如何防止并发(redis如何防止高并发)
-
开源推荐:如何实现的一个高性能 Redis 服务器
-
redis安装与调优部署文档(WinServer)
-
Redis 入门 - 安装最全讲解(Windows、Linux、Docker)
-
一文带你了解 Redis 的发布与订阅的底层原理
-
Redis如何应对并发访问(redis控制并发量)
-
oracle数据库查询Sql语句是否使用索引及常见的索引失效的情况
-
Java SE Development Kit 8u441下载地址【windows版本】
-
- 最近发表
- 标签列表
-
- oracle位图索引 (63)
- oracle批量插入数据 (62)
- oracle事务隔离级别 (53)
- oracle 空为0 (50)
- oracle主从同步 (55)
- oracle 乐观锁 (51)
- redis 命令 (78)
- php redis (88)
- redis 存储 (66)
- redis 锁 (69)
- 启动 redis (66)
- redis 时间 (56)
- redis 删除 (67)
- redis内存 (57)
- redis并发 (52)
- redis 主从 (69)
- redis 订阅 (51)
- redis 登录 (54)
- redis 面试 (58)
- 阿里 redis (59)
- redis 搭建 (53)
- redis的缓存 (55)
- lua redis (58)
- redis 连接池 (61)
- redis 限流 (51)