Redis学习笔记(五) 基本命令:Hash操作
原文链接:http://doc.redisfans.com/hash/index.html
学习前先明确一下概念,这里我们把Redis的key称作key(键),把数据结构hash中的key称为field(域)。
hdel key field[field...]
删除hash表中的一个或多个指定域,若key或field不存在则会忽略;例:hdel hk k1 k2。
hexists key field
判断hash表中指定域是否存在,返回1,若key或field不存在则返回0;例:hexists hk k1。
hget key field
获取hash表中指定域的值,key或域不存在时返回nil;例:hget hk k1。
hgetall key
获取hash表中所有域的值;例:hgetall hk,返回结果如:
1) k1
2) v1
3) k2
4) v2
5) k3
6) v3
1和2、3和4、5和6各为一组,代表hash表的field和value。
hincrby key field increment
为hash表中的指定域增加指定的整数值(负数亦可),若域不存在则默认初始化值为0后再进行操纵,若域存在但值不为数值但非64位有符号数时返回错误;例:hincrby hk k1 15。
hincrbyfloat key field increment
和hincrby相似,不同的是hincrbyfloat操作的是浮点数;例:hincrbyfloat hk k1 1.3。
hkeys key
返回hash表中的所有域,若key不存在返回空;例:hkeys hk。
hvals key
返回hash表中的所有val,若key不存在返回空;例:hvals hk。
hlen key
返回hash表中所有域的数量,若key不存在返回0;例:hlen hk。
hset key field value
将field-value设置到hash表中,若key不存在会新建hash表再赋值,若field已存在则会覆盖现有值;例:hset hk k v。
hsetnx key field value
和hset类似,但是hsetnx要求field不存在才能进行此操作,否则会返回0;例:hset hk k v。
hmget key field[field...]
返回hash表中多个指定域的值,若key不存在返回空,若field不存在返回nil;例:hmget hk k1 k2 k3。
hmset key field1 value1[field value...]
将一个或多个field-value设置到hash表中;例:hmset hk k4 v4 k5 v5 k6 v6。
hscan key cursor[match pattern][count count]
采用游标的方式对当前的hash进行迭代(具体描述请参考scan),例:hscan hk 0。
Redis学习笔记(五) 基本命令:Hash操作的更多相关文章
- ES6学习笔记<五> Module的操作——import、export、as
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小 ...
- Redis学习笔记--五种数据类型的使用场景
String 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- Redis 学习笔记五 经常使用php函数
PHPRedis的安装在这里: http://blog.csdn.net/xundh/article/details/46288277 键值操作 $redis = new Redis(); $redi ...
- Redis学习笔记五:独立功能之事务
Redis 事务提供了一种将多个命令请求打包,然后一次性.按顺序地执行多个命令的机制,并且在事务执行期间,服务器不会中断,会将事务中的所以命令都执行完毕才去处理其他客户端的命令请求. 事务的实现 事务 ...
- MongoDB学习笔记(五) MongoDB文件存取操作
由于MongoDB的文档结构为BJSON格式(BJSON全称:Binary JSON),而BJSON格式本身就支持保存二进制格式的数据,因此可以把文件的二进制格式的数据直接保存到MongoDB的文档结 ...
- StackExchange.Redis学习笔记(五) 发布和订阅
Redis命令中的Pub/Sub Redis在 2.0之后的版本中 实现了 事件推送的 发布订阅命令 以下是Redis关于发布和订阅提供的相关命令 SUBSCRIBE channel [channe ...
- Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash
引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...
- Redis学习笔记(二) Redis 数据类型
Redis 支持五种数据类型:string(字符串).list(列表).hash(哈希).set(集合)和 zset(有序集合),接下来我们讲解分别讲解一下这五种类型的的使用. String(字符串) ...
- redis 学习笔记(6)-cluster集群搭建
上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...
- Redis学习笔记4-Redis配置详解
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...
随机推荐
- [Offer收割]编程练习赛41
比赛日程安排 #pragma comment(linker, "/STACK:102400000,102400000") #include<stdio.h> #incl ...
- okhttp3 ExceptionInInitializerError 异常处理
okhttp3 在Android4.4上出现下面异常 java.lang.ExceptionInInitializerError at okhttp3.OkHttpClient.newSslSocke ...
- fopen函数打开文件总是返回NULL错误
有时候,调用fopen函数用来打开文件,但是总会返回NULL.对于此类问题.一定是一下两种原因之一造成的. 1.路径错误.(路径中斜杠和反斜杠的问题) 2.文件在另一个进程中被打开,再次打开当然不行( ...
- PIC EEPROM问题
1.通过export出来的Hex烧录,EEPROM内容会根据Hex中关于EEPROM的定义而改变. 2.通过编译源文件烧录,如果没有勾选Preserve EEPROM on program则EEPRO ...
- jmeter实现多并发
1.jmeter实现多并发 线程组:负载发生器,用以多线程或多进程的方式来模拟用户的使用行为.jmeter是以线程的方式来进行模拟用户的并发访问的
- input标签处理多文件上传
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ...
- 2、Ansible配置文件详解
0.配置文件 两个核心文件:ansible.cfg和hosts文件,默认都存放在/etc/ansible目录下. ansible.cfg:主要设置一些ansible初始化的信息,比如日志存放路径.模块 ...
- Netty、NIO、多线程
一:Netty.NIO.多线程? 时隔很久终于又更新了!之前一直迟迟未动也是因为积累不够,后面比较难下手.过年期间@李林锋hw发布了一个Netty5.0架构剖析和源码解读,看完也是收获不少.前面的文章 ...
- Python 使用matplotlib模块模拟掷骰子
掷骰子 骰子类 # die.py 骰子类模块 from random import randint class Die(): """骰子类""&quo ...
- OOP 面向对象 七大原则 (二)
OOP 面向对象 七大原则 (二) 上一篇写到了前四个原则,这一篇继续~~ 接口隔离:客户端不应该依赖它不需要的接口:一个类对另一个类的依赖应该建立在最小的接口上. 又是一句大白话~就是说接口尽量 ...