我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器。所以该类型非常适合于存储值对象的信息。如Username、Password和Age等。如果Hash中包含很少的字段,那么该类型的数据也将仅占用很少的磁盘空间。每一个Hash可以存储4294967295个键值对。

1、HSET key field value

将哈希表 key 中的字段 field 的值设为 value。如果字段是哈希表中的一个新建字段,并且值设置成功,返回 1 。 如果哈希表中域字段已经存在且旧值已被新值覆盖,返回 0 。

127.0.0.1:> hset website google "www.google.com"
(integer)
127.0.0.1:> hget website google
"www.google.com"
127.0.0.1:> hset website google www.google.com
(integer)
127.0.0.1:> hget website google
"www.google.com"

2、HGET key field 

获取存储在哈希表中指定字段的值

127.0.0.1:> hset website google "www.google.com"
(integer)
127.0.0.1:> hget website google
"www.google.com"
127.0.0.1:> hset website google www.google.com
(integer)
127.0.0.1:> hget website google
"www.google.com"

3、HEXISTS key field 

查看哈希表 key 中,指定的字段是否存在。如果哈希表含有给定字段,返回 1 。 如果哈希表不含有给定字段,或 key 不存在,返回 0 。

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.com"
127.0.0.1:> hexists website baidu
(integer)

4、HDEL key field1 [field2] 

删除一个或多个哈希表字段,不存在的字段将被忽略。返回值显示被成功删除字段的数量,不包括被忽略的字段。

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.com"
127.0.0.1:> hdel website baidu yahoo
(integer)
127.0.0.1:> hgetall website
) "google"
) "www.google.com"

5、HMGET key field1 [field2]

获取所有给定字段的值

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
127.0.0.1:> hmget website baidu yahoo
) "www.baidu.com"
) "www.yahoo.cn"

6、HMSET key field1 value1 [field2 value2 ]

同时将多个 field-value (域-值)对设置到哈希表 key 中。

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
127.0.0.1:> hmset website sina www.sina.com netease .com
OK
127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
) "sina"
) "www.sina.com"
) "netease"
) "163.com"

7、HKEYS key

获取所有哈希表中的字段

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
) "sina"
) "www.sina.com"
) "netease"
) "163.com"
127.0.0.1:> hkeys website
) "google"
) "baidu"
) "yahoo"
) "sina"
) "netease"

8、HVALS key

获取哈希表中所有值

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
) "sina"
) "www.sina.com"
) "netease"
) "163.com"
127.0.0.1:> hvals website
) "www.google.com"
) "www.baidu.com"
) "www.yahoo.cn"
) "www.sina.com"
) "163.com"

9、HGETALL key

获取在哈希表中指定 key 的所有字段和值

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "baidu"
) "www.baidu.com"
) "yahoo"
) "www.yahoo.cn"
) "sina"
) "www.sina.com"
) "netease"
) "163.com"

10、HINCRBY key field increment

为哈希表 key 中的指定字段的整数值加上增量 increment 。返回增加之后的结果。

127.0.0.1:> hset configuration connections
(integer)
127.0.0.1:> hincrby configuration connections
(integer)
127.0.0.1:> hget configuration connections
""

11、HINCRBYFLOAT key field increment

为哈希表 key 中的指定字段的浮点数值加上增量 increment 。

127.0.0.1:> hset configuration amount 10.33
(integer)
127.0.0.1:> hincrbyfloat configuration amount 4.67
""
127.0.0.1:> hget configuration amount
""

12、HSETNX key field value

只有在字段 field 不存在时,设置哈希表字段的值。

127.0.0.1:> hgetall website
) "google"
) "www.google.com"
127.0.0.1:> hsetnx website google hellogoogle
(integer)
127.0.0.1:> hsetnx website xiaomi www.mi.com
(integer)
127.0.0.1:> hgetall website
) "google"
) "www.google.com"
) "xiaomi"
) "www.mi.com"

13、HSCAN key cursor [MATCH pattern] [COUNT count] 

迭代哈希表中的键值对。

5.Redis常用命令:Hash的更多相关文章

  1. 第2讲 Redis常用命令与高级应用

    目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...

  2. Redis常用命令与高级应用

    附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...

  3. Redis快速起步及Redis常用命令大全

    本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...

  4. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

  5. redis常用命令-2

    redis常用命令 type your_key #查看Key类型 del your_key #删除key keys * #所有key info #信息 /usr/local/bin/redis-cli ...

  6. Redis常用命令

    Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...

  7. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

  8. redis redis常用命令及内存分析总结(附RedisClient工具简介

    redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...

  9. redis配置密码 redis常用命令

    redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy   #requi ...

  10. redis常用命令及持久化机制

    redis  常用命令 查找redis服务文件 find / -name  redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...

随机推荐

  1. 关于C# XmlDocument方法Load加载流后自动释放流的解决方法

    在实际应用doc.Load(Request.InputStream)的时候,doc.Load方法内置默认释放流 造成再次度Request.InputStream的时候,代码报错 替换方法: XmlDo ...

  2. devexpress实现单元格根据条件显示不同的样式(颜色、字体、对齐方式,大小等)

    1.devexpress控件库之所以被大家所喜爱,是因为它将许多常用的东西都封装成了属性.可以通过一些简单的配置,将以前某些需要大篇幅代码才可实现的效果展示出来.这里是一个实现了将[第二列数据在表格0 ...

  3. Tinyshell: 一个简易的shell命令解释器

    这是自己最近学习Linux系统编程之后写的一个练手的小程序,能很好地复习系统编程中的进程管理.信号.管道.文件等内容. 通过回顾写的过程中遇到的问题的形式记录程序的关键点,最后给出完整程序代码. 0. ...

  4. 2017-2-19 C#基础 数据类型

    数据类型分为基本数据类型和引用类型.基本数据类型分为两大类,值类型,字符型(char)和布尔型(bool).其中值类型分为整型和浮点型.整型分为byte,short,int,long.常用的是int( ...

  5. 《剑指offer》— JavaScript(19)顺时针打印矩阵

    顺时针打印矩阵 题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打 ...

  6. Excel与XML相互转换 - C# 简单实现方案

    Excel与XML相互转换 - C# 简单实现方案 在日常工作中,我需要将数据存储在Excel中进行数据分析和处理,然后再将数据转换为XML格式进行跨平台的数据交换.网上搜索Excel转换为XML的实 ...

  7. Android源码编译常见错误(持续更新)

    本文为个人工作中处理遇到的编译问题做个小结,后续遇到新的问题,持续更新. No such file or directory: 1. 检查路径是否有问题,文件是否存在,若文件存在且路径没问题 2. 检 ...

  8. sql server数据库备份压缩拷贝实例

    --数据库备份压缩拷贝实例:前提要安装RAR压缩软件--声明变量declare @day varchar(10),@dbname varchar(20),@filename varchar(100), ...

  9. c#基础——for循环嵌套经典练习题(打★)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 作业题1 ...

  10. 警惕一大波银行类木马正在靠近,新型BankBot木马解析

    背景 来自安全公司Dr.Web的研究人员说,最近一个未命名的Android银行木马源代码在地下黑客论坛遭到了泄露.就在近期,阿里聚安全检测到大量新型BankBot家族木马,木马伪装成Good Weat ...