1. Redis HashSet相关命令
- HSET key field value:为指定的Key设定Field/Value对,如果Key不存在,该命令将创建新Key以参数中的Field/Value对,如果参数中的Field在该Key中已经存在,则用新值覆盖其原有值。返回1表示新的Field被设置了新值,0表示Field已经存在,用新值覆盖原有值。
- HGET key field :返回指定Key中指定Field的关联值。 返回参数中Field的关联值,如果参数中的Key或Field不存,返回nil。
- HEXISTS key field :判断指定Key中的指定Field是否存在。1表示存在,0表示参数中的Field或Key不存在。
- HLEN key :获取该Key所包含的Field的数量,返回Key包含的Field数量,如果Key不存在,返回0。
- HDEL key field [field …]:从指定Key的Hashes Value中删除参数中指定的多个字段,如果不存在的字段将被忽略。如果Key不存在,则将其视为空Hashes,并返回0. 否则返回实际删除的Field数量。
- HSETNX key field value:只有当参数中的Key或Field不存在的情况下,为指定的Key设定Field/Value对,否则该命令不会进行任何操作。1表示新的Field被设置了新值,0表示Key或Field已经存在,该命令没有进行任何操作。
- HINCRBY key field increment:增加指定Key中指定Field关联的Value的值。如果Key或Field不存在,该命令将会创建一个新Key或新Field,并将其关联的Value初始化为0,之后再指定数字增加的操作。该命令支持的数字是64位有符号整型,即increment可以负数。返回运算后的值。
- HGETALL key:获取该键包含的所有Field/Value。其返回格式为一个Field、一个Value,并以此类推。Field/Value的列表。
- HKEYS key:返回指定Key的所有Fields名。Field的列表。
- HVALS key:返回指定Key的所有Values名。Value的列表。
- HMGET key field [field …]:获取和参数中指定Fields关联的一组Values。如果请求的Field不存在,其值返回nil。如果Key不存在,该命令将其视为空Hash,因此返回一组nil。返回和请求Fields关联的一组Values,其返回顺序等同于Fields的请求顺序。
- HMSET key field value [field value …]:逐对依次设置参数中给出的Field/Value对。如果其中某个Field已经存在,则用新值覆盖原有值。如果Key不存在,则创建新Key,同时设定参数中的Field/Value。
2. jedis HashSet相关函数
hset(key, field, value):向名称为key的hash中添加元素field<—>value
hget(key, field):返回名称为key的hash中field对应的value
hmget(key, field1, …,field N):返回名称为key的hash中field i对应的value
hmset(key, field1, value1,…,field N, value N):向名称为key的hash中添加元素field i<—>value i
hincrby(key, field, integer):将名称为key的hash中field的value增加integer
hexists(key, field):名称为key的hash中是否存在键为field的域
hdel(key, field):删除名称为key的hash中键为field的域
hlen(key):返回名称为key的hash中元素个数
hkeys(key):返回名称为key的hash中所有键
hvals(key):返回名称为key的hash中所有键对应的value
hgetall(key):返回名称为key的hash中所有的键(field)及其对应的value