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 ...
随机推荐
- MyAdapter Andriod
private List<T> listdate;//定义数据对象 //为了获取item中的点击事件定义ViewHolderprivate static class ViewHolder ...
- 201621123050 《Java程序设计》第10周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 1. 常用异常 结合题集题目7-1回答 1.1 自己以前编写的代码中经常出现 ...
- iOS开发-OC分支结构
BOOL类型 返回值:真:YES 假:NO BOOL数据类型占一个字节的内存空间,占位符为%d. 计算机在识别时,YES就替换成1,NO就替换成0. bool是C语言中的布尔类型,返回值为true ...
- jquery基本使用和实例
一.寻找元素 表单选择器 $(":input") //匹配所有 input, textarea, select 和 button 元素 $(":text") / ...
- bzoj千题计划177:bzoj1858: [Scoi2010]序列操作
http://www.lydsy.com/JudgeOnline/problem.php?id=1858 2018 自己写的第1题,一遍过 ^_^ 元旦快乐 #include<cstdio> ...
- caffe使用ctrl-c不能保存模型
caffe使用Ctrl-c 不能保存模型: 是因为使用的是 tee输出日志 解决方法:kill -s SIGINT <proc_id> 或者使用 GLOG_log_dir=/path/to ...
- python 一篇搞定所有的异常处理
一:什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行. 一般情况下,在python无法正常处理程序时就会发生一个异常(异常是python对象,表示一个错误) 异常就是 ...
- CDH:5.14.0 中 Hive BUG记录
CDH5.14.0使用的HIVE版本: 自建表log: +----------------------------------------------------+--+ | createtab_st ...
- CentOS 7 安装Graphite
Graphite简介 Graphite是一个Python编写的企业级开源监控工具,采用django框架,用来收集服务器所有的即时状态,用户请求信息,Memcached命中率,RabbitMQ消息服务器 ...
- :after/:before使用技巧
伪类:after/:before基本使用 div:before{ content:'';//必须要写,没写则伪元素无效 display:; position:''; ... } //在一个div子元素 ...