Redis常用命令--Hashes
Hash是由键值对组成的map。Hashes的底层是通过字典实现的。一个哈希表里面可以有多个哈希表节点。而每个哈希节点就保存了字典中的一个键值对。
字典是一种用于保存键和值对的抽象数据结构。字典里的每一个键都是唯一的。
在哈希表里面存在一个哈希表数组。其中每个元素指向一个字典的键值对。
在哈希表里面还记录了一个哈希表的大小。已经使用的节点数。还有一个sizemask,它总是比哈希表的大小小1,
用于决定一个键应该放在数组的哪个索引上。
在每个哈希表节点中,都保存了下一个节点,形成链表。
在Redis中大概有15个操作Hash的命令。
HSET key field value:设置hash里面key中的field字段的值设为value,时间复杂度为O(1)。
HGET key field:获取hash中域key的field的值,,时间复杂度为O(1)。
HDEL key field [field ...]:删除域key中一个或多个Hash的field,
HMSET key field value [field value ...]:设置hash表中域key的多个字段值
HMGET key field [field ...]:获取hash里面域key的多个指定字段的值
HKEYS key:获取hash表中域key的所有字段
HVALS key:获得hash表中key域的所有值
HGETALL key:从hash中读取域key中全部的域和值
HLEN key:获取hash里域key所有字段的数量
HEXISTS key field:判断field是否存在于hash中
HSETNX key field value:设置hash的一个字段,只有当这个字段不存在时有效
HSTRLEN key field:获取hash里面指定field的长度
127.0.0.1:6379> HSET user name zhangsan
(integer) 1
127.0.0.1:6379> HGET user name
"zhangsan"
127.0.0.1:6379> HMSET user age 20 address shanghai birthday 12/18
OK
127.0.0.1:6379> HMGET user name age
1) "zhangsan"
2) "20"
127.0.0.1:6379> HDEL user age
(integer) 1
127.0.0.1:6379> HKEYS user
1) "name"
2) "address"
3) "birthday"
127.0.0.1:6379> HVALS user
1) "zhangsan"
2) "shanghai"
3) "12/18"
127.0.0.1:6379> HGETALL user
1) "name"
2) "zhangsan"
3) "address"
4) "shanghai"
5) "birthday"
6) "12/18"
127.0.0.1:6379> HLEN user
(integer) 3
127.0.0.1:6379> HEXISTS user age
(integer) 0
127.0.0.1:6379> HEXISTS user name
(integer) 1
127.0.0.1:6379> HSETNX user age 18
(integer) 1
127.0.0.1:6379> HSETNX user name lisi
(integer) 0
127.0.0.1:6379> HSTRLEN user name
(integer) 8
127.0.0.1:6379>
HINCRBY key field increment:将hash中指定域的值增加给定的数字
HINCRBYFLOAT key field increment:将hash中指定域的值增加给定的浮点
127.0.0.1:6379> HINCRBY user age 5
(integer) 23
127.0.0.1:6379> HINCRBYfloat user age 5.2
"28.2"
HSCAN key cursor [MATCH pattern] [COUNT count]:迭代hash里面的元素
每次都返回一个游标,初始值为0。
Redis常用命令--Hashes的更多相关文章
- Redis常用命令
Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis redis常用命令及内存分析总结(附RedisClient工具简介
redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...
- Redis常用命令与高级应用
附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...
- Redis快速起步及Redis常用命令大全
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- redis配置密码 redis常用命令
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy #requi ...
- redis常用命令及持久化机制
redis 常用命令 查找redis服务文件 find / -name redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...
- Redis 常用命令 大全
Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...
随机推荐
- WCF配置问题(配置WCF跨域)
其它的先放一边.今天先来分享一下前段时间给公司做网站WCF服务接口的心得. 配置文件的配置问题 这里既然讨论WCF配置文件的问题,那么怎么创建的就不一一讲解了.好多博主都有提过的.所以直接分享自己开发 ...
- java 5线程中 Semaphore信号灯,CyclicBarrier类,CountDownLatch计数器以及Exchanger类使用
先来讲解一下Semaphore信号灯的作用: 可以维护当前访问自身的线程个数,并提供了同步机制, 使用semaphore可以控制同时访问资源的线程个数 例如,实现一个文件允许的并发访问数. 请看下面 ...
- 自定义ArrayList
自定义实现ArrayList很简单,只需要明白下面几点 1.ArrayList 底层是由数组组成的 2.数组有容量限制,但是ArrayList并没有(实际上也有,Integer.MAX_VALUE). ...
- SQL的介绍及MySQL的安装
基础篇 - SQL 介绍及 MySQL 安装 SQL的介绍及MySQL的安装 课程介绍 本课程为实验楼提供的 MySQL 实验教程,所有的步骤都在实验楼在线实验环境中完成, ...
- 纯CSS垂直居中的四种解决方案
总结了几种解决方法 但也不是说除了我说的就没有其他方法了 第一个.利用flex布局 代码: 效果: 第二个.利用transform 的 translate属性 代码: 效果: 第三个.使用伪类::af ...
- STM32常见问题
一.STM32 下不了程序 提示: (1).JLink Info: CPU halted Erase Done. Programming Failed! 解决办法: 用isp把芯片全部擦除再试试,如果 ...
- 读论文系列:Object Detection ECCV2016 SSD
转载请注明作者:梦里茶 Single Shot MultiBox Detector Introduction 一句话概括:SSD就是关于类别的多尺度RPN网络 基本思路: 基础网络后接多层featur ...
- Python基础学习篇章三
一. Python对象类型 1. 对象是Python最基本的概念,一个Python程序可以分解为模块.语句.表达式.和对象.它们的关系如下:(1)程序由模块构成 (2)模块包含语句 (3)语句包含表达 ...
- Python内置函数(2)——divmod
英文文档: divmod(a, b) Take two (non complex) numbers as arguments and return a pair of numbers consisti ...
- python 判断变量是否是 None 的三种写法
代码中经常会有变量是否为None的判断,有三种主要的写法:第一种是`if x is None`:第二种是 `if not x:`:第三种是`if not x is None`(这句这样理解更清晰`if ...