redis- hash操作

来源:互联网 发布:网络感叹号怎么解决 编辑:程序博客网 时间:2024/06/11 13:09

原文链接:http://doc.redisfans.com/hash/index.html

  学习前先明确一下概念,这里我们把Redis的key称作key(键),把数据结构hash中的key称为field(域)。

hdel key field[field...]
  删除hash表中的一个或多个指定域,若key或field不存在则会忽略;例:hdel hk k1 k2。

hexists key field
  判断hash表中指定域是否存在,返回1,若key或field不存在则返回0;例:hexists hk k1。

hget key field
  获取hash表中指定域的值,key或域不存在时返回nil;例:hget hk k1。

hgetall key
  获取hash表中所有域的值;例:hgetall hk,返回结果如:
  1) k1
  2) v1
  3) k2
  4) v2
  5) k3
  6) v3
1和2、3和4、5和6各为一组,代表hash表的field和value。

hincrby key field increment
  为hash表中的指定域增加指定的整数值(负数亦可),若域不存在则默认初始化值为0后再进行操纵,若域存在但值不为数值但非64位有符号数时返回错误;例:hincrby hk k1 15。

hincrbyfloat key field increment
  和hincrby相似,不同的是hincrbyfloat操作的是浮点数;例:hincrbyfloat hk k1 1.3。

hkeys key
  返回hash表中的所有域,若key不存在返回空;例:hkeys hk。

hvals key
  返回hash表中的所有val,若key不存在返回空;例:hvals hk。

hlen key
  返回hash表中所有域的数量,若key不存在返回0;例:hlen hk。

hset key field value
  将field-value设置到hash表中,若key不存在会新建hash表再赋值,若field已存在则会覆盖现有值;例:hset hk k v。

hsetnx key field value
  和hset类似,但是hsetnx要求field不存在才能进行此操作,否则会返回0;例:hset hk k v。

hmget key field[field...]
  返回hash表中多个指定域的值,若key不存在返回空,若field不存在返回nil;例:hmget hk k1 k2 k3。

hmset key field1 value1[field value...]
  将一个或多个field-value设置到hash表中;例:hmset hk k4 v4 k5 v5 k6 v6。

hscan key cursor[match pattern][count count]
  采用游标的方式对当前的hash进行迭代(具体描述请参考scan),例:hscan hk 0。

原创粉丝点击