Redis学习(4)-数据类型,string,hash

Redis数据类型:

redis使用键值对保存数据

key:全部是字符串

value:五种数据类型:string,hash,List,Set,有序的Set集合。

key命名:自定义,名字不要过长,否则影响效率。

String命令

赋值:

set   key  value

取值:

get  key(如果key不存在,返回null)

删除:

del   key:删除指定key(返回数字类型,表示删除几条数据)

扩展命令:

设置获取值:

getset   key  value:先获取key的值,然后设置该key的值。

数值增减:

incre  key  increment:将指定key原子性递增,如果key不存在,其初始值为0,在incre后变为1,如果value的值不能转换为数值类型,如hello,该操作将返回失败错误信息。

      相当于i++。

数值递减:

decr  key decrement:过程参考数值递增,不存在则值为0-1,变为-1。

拼接字符串:

append  key  value:拼接字符串。(如果key不存在,自动创建一个key)。

例如:key:password值为123,append  password   456,那么password的值就变成了123456.。

String使用环境:

主要用于保存json格式的字符串

Hash命令

非常适合存储值对象的信息。如:username,password,和age。

赋值:

hset   key  field value:为指定的key设定  field/value对(键值对)。

例如:要保存一个key为hash1,value为{uname:“zhangshan”}

hset    hash1    uname    zhangshan

 设置多个字段:

hmset  key  field  value[field2  value2....]:设置key中多个field/value。

例如:要保存一个key为hash2,value为{uname:“zhangshan”,age:18,sex:man}

hash    hash2    uname  zhangshan    age    18    sex    man

取值:

hget  key  field:返回指定key中的field值:

例如:

hget    hash2    uname

结果:zhangshan

hmget  key  field1  field2  field3....:返回key中多个field的值:

例如:

hmget    hash2    uname    age

结果:

hgetall  key:获取key中所有filed-value。

例如:

hgetall    hash2

结果:

 删除:

hdel  key  field1  field2  field3...:可以删除一个或多个字段,返回值是被删除的字段个数

例如:

hdel    hash1    uname

del  key:删除正个key

del    hash1

增加数字:

hincreby  key  field  increment:设置key中field的值增加increment,如age增加20.。

hincreby    hash1    age    10

自学命令:

hexists  key  field:判断指定的key中field是否存在。

hexists    hash1    uname

hlen  key:获取key所包含的field字段数量。

hkeys  key:获取所有的字段。

hvalues  key:获取所有的value。

 

原文地址:https://www.cnblogs.com/alsf/p/9094906.html