redis的基本数据类型为:
- string
- list
- set
- hash
- zset
hash数据类型(相当于Map集合)
hash的本质和string类型没有太大区别。
hash命令以"h"开头:
hset <hash> <key> <value> #在hash中创建字段key,设置字段值value
hsetnx <hash> <key> <value> #当hash中没有key字段时正常创建;当hash中存在key字段时不进行操作
hget <hash> <key> #获取hash中的指定字段key的值
hgetall <hash> #获取hash中的所有字段和字段值
hkeys <hash> #获取hash中所有的字段key
hvals <hash> #获取hash中所有的字段值value
hmset <hash> <key1> <value1> <key2> <value2>... #批量创建hash中的字段和字段值
hmget <hash> <key1> <key2>... #批量获取hash中的指定字段的字段值
hexists <hash> <key> #判断hash中是否存在字段key:1存在;0不存在
hlen <hash> #获取hash集合中的字段个数
hstrlen <hash> <key> #获取hash中的指定字段key的字段值长度,当hash或key不存在时,返回0
hdel <hash> <key> #删除hash中指定的字段key
hincrby <hash> <key> <n> #增加hash中指定字段key的数值。当hash或key不存在时,创建并将key的初始值设为0
#hash命令中没有hdecrby,所以自减可将n设为负值
hincrbyfloat <hash> <key> <n> #增加hash中指定字段key的数值,类型为float。
#需确保当前key或value可解析为float类型
hash数据类型更适合用于对象的存储
例:hmset user1 id 1 name “sara” age 16 …