redis hash数据类型操作
忙碌了半个多月,拖更了半个多月,首先向支持我的同僚们报以诚挚歉意,这半个月一直忙着跳槽的事,又是面试,又是处理南水北调的交接工作,今天第一天来到新公司入职,希望大家能够理解,我会一心做好这个公众号,促进自己学习的同时将我遇到的一些问题和理解以干货的形式发给大家,我们一起学习一起进步.今天继续讲讲nosql redis 的知识点
之前我们介绍过redis当中对string类型的数据进行操作,我们今天说一下redis当中针对hash数据类型的数据操作的方法
redis当中hash类型用的十分的广泛,比如说数据库当中存储对象,非规则结构化的数据等,具体方法我们在下面演示一下:
创建一个hash key
hash key创建的时候对应的是多个域多个value 的模式,可以把域理解成对应的字段。
127.0.0.1:6379> hmset key field value [field value ...]
127.0.0.1:6379> hmget key field [field ...]

这个就是最简单的hash key的创建和查看。
我们也可以创建一个hash key当中有多个key域和值

这个时候在查看这个hash表的时候如果想要查看当前hash表当中的所有的域的话,用到的就是hgetall
hgetall key
查看当前hash key当中是否存在某域
hexists key field 如果存在返回1,不存在返回0

删除某个hash key当中的域
hdel key field [field ...] 可以删除多个域

将hash key当中对应的域自增
hincrby key field increment 当这个key不存在会先创建一个key并且以后面的步长为初始值,如果已经有值,那么将会按照对应的步长进行创建。

我们针对浮点型的值有特殊的处理方法

hincrbyfloat key field increment 当这个值不存在会对这个只有自动创建的功能,如果存在那么会将这个值只针对浮点数可以增加整数或者浮点数。但是不能使用hincrby 这种方法进行自增。
查看hash key当中有那些域
hkeys key 我在"niangpao"表当中插入了一些域,通过hkey只显示了存在的域但是没有对应的value

我这里用了一个操作hset,这个是改变某个域的value值
还有一个是hmset,这个是批量改变域的value值
想要看这个key当中所有的value但是不显示域使用的是
hvals key 这种方法是只显示value,但是没有域的名字

获得hash value 当中的域的数量
用到的是hlen key 会直接将域的数量显示。

好了,这些就是redis 针对hash的一些操作。 希望大家能够一起学习进步。
THAT'S ALL
BY CUI PEACE

本文分享自微信公众号 - 最帅dba工作笔记,如有侵权,请联系 service001@enmotech.com 删除。




