内容简介:下面介绍具体命令.设置一条哈希数据存储:获取值中的某个字段, 要指定字段名:
哈希值存储示意图:
首先, 我想先认真理解一下哈希值的数据结构:
前面讲过, redis 存储的是键值对, 键永远都是可以打印的 ASCII 码, 值是字符串, 或者是以其他形式包裹的字符串. 上两节介绍了单纯字符串值的相关命令, 现在开始接触第一个所谓的"以其他形式包裹的字符串" --- 哈希值. 大家看上图中, 哈希值的部分, 一共有4行, 可以看作是一个数组, 里面包含了4个元素, 再看每一个元素(也就是每一行)都有一个 field 与 value 对应, 可以看作是一个映射(map). 总结, 哈希值的数据结构就是数组包含映射(list > map, 这是从 python 的角度理解的, 如果从 php 的角度, 我觉得有点像是一个二维数组)
下面介绍具体命令.
设置一条哈希数据存储:
127.0.0.1:6379> hmset stu-1 name max age 16 sex male OK
获取值中的某个字段, 要指定字段名:
127.0.0.1:6379> hget stu-1 name "max"
获取某个键的哈希值的指定字段的值:
127.0.0.1:6379> hmget stu-1 name 1) "max" 127.0.0.1:6379> hmget stu-1 name age 1) "max" 2) "18"
获取全部的哈希值:
127.0.0.1:6379> hgetall stu-1 1) "name" 2) "max" 3) "age" 4) "16" 5) "sex" 6) "male"
判断某个键的哈希值的某个字段是否存在:
127.0.0.1:6379> hexists stu-1 surname (integer) 0 127.0.0.1:6379> hexists stu-1 name (integer) 1
删除某个键的哈希值的某个字段:
127.0.0.1:6379> hdel stu-1 sex (integer) 1 127.0.0.1:6379> hgetall stu-1 1) "name" 2) "max" 3) "age" 4) "16"
设置某个键的哈希值的某个字段:
127.0.0.1:6379> hmset stu-1 sex male OK 127.0.0.1:6379> hgetall stu-1 1) "name" 2) "max" 3) "age" 4) "16" 5) "sex" 6) "male"
设置某个键的哈希值的某个字段前, 先判断这个字段是否可用, 如果可用则返回1, 表示设置成功, 如果不可用则返回0, 表示设置失败:
127.0.0.1:6379> hsetnx stu-1 name tom (integer) 0 127.0.0.1:6379> hsetnx stu-1 surname tom (integer) 1 127.0.0.1:6379> hsetnx stu-1 class 3 (integer) 1 127.0.0.1:6379> hgetall stu-1 1) "name" 2) "max" 3) "age" 4) "16" 5) "sex" 6) "male" 7) "class" 8) "3" 9) "surname" 10) "tom"
判断某个键的哈希值的某个字段是否存在, 如果存在则返回1:
127.0.0.1:6379> hexists stu-1 class (integer) 1 127.0.0.1:6379> hget stu-1 class "3"
获取某个键的所有字段名:
127.0.0.1:6379> hkeys stu-1 1) "name" 2) "age" 3) "sex" 4) "class" 5) "surname"
获取某个键的所有字段的值:
127.0.0.1:6379> hvals stu-1 1) "max" 2) "16" 3) "male" 4) "3" 5) "tom"
以自定义的幅度, 增加某个键的哈希值的某个字段的值:
127.0.0.1:6379> hincrby stu-1 age 2 (integer) 18 127.0.0.1:6379> hgetall stu-1 1) "name" 2) "max" 3) "age" 4) "18" 5) "sex" 6) "male" 7) "class" 8) "3" 9) "surname" 10) "tom"
查看某个键的哈希值一共有几个字段:
127.0.0.1:6379> hlen stu-1 (integer) 5
以上, 就是关于哈希值的基本命令, enjoy.....
以上所述就是小编给大家介绍的《理解 Redis(5) - 哈希值》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
An Introduction to Probability Theory and Its Applications
William Feller / Wiley / 1991-1-1 / USD 120.00
Major changes in this edition include the substitution of probabilistic arguments for combinatorial artifices, and the addition of new sections on branching processes, Markov chains, and the De Moivre......一起来看看 《An Introduction to Probability Theory and Its Applications》 这本书的介绍吧!