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。