redis之hash数据结构基本操作

Hset

  • 请求格式:
HSET key field value
  • 命令说明:

    设置 key 指定的哈希集中指定字段的值。

    如果 key 指定的哈希集不存在,会创建一个新的哈希集并与 key 关联。

    如果字段在哈希集中存在,它将被重写。

  • 返回值

    返回0:当field已存在,虽然值会被重写,但返回值是0

    返回1,当field是一个新的字段,并赋值成功

  • 例子

    redis> HSET myhash field1 "Hello"
    (integer) 1
    redis> HGET myhash field1
    "Hello"
    redis> 
    

HSETNX

  • 请求格式

    HSETNX key field value
    
  • 命令说明

    只有当field不存在时,才能将值写入成功。即写入时判断field是否已存在,已存在,则不进行写入操作。

  • 返回值

    返回0:当field已存在时,返回0,且不重写值

    返回1:当field为新的字段,并赋值成功时,返回1

  • 例子

10.31.17.225:6380> hget mykey nx
(nil)
10.31.17.225:6380> hsetnx mykey nx nx
(integer) 1
10.31.17.225:6380> hget mykey nx
"nx"
10.31.17.225:6380> hsetnx mykey nx qwe
(integer) 0
10.31.17.225:6380> hget mykey nx
"nx"

HSTRLEN

  • 请求格式
HSTRLEN key field
  • 命令说明

返回hash指定field的value的字符串长度,如果hash或者field不存在,返回0.

  • 返回值说明

如果指定field存在value,则返回value的实际长度,否则,返回0

  • 例子
10.31.17.225:6380> hget mykey nx
"nx"
10.31.17.225:6380> hstrlen mykey nx
(integer) 2
10.31.17.225:6380> hget mykey aa
(nil)
10.31.17.225:6380> hstrlen mykey aa
(integer) 0

HVALS

  • 请求格式
HVALS key
  • 命令说明

返回指定key哈希集中所有field对应的值

  • 返回值说明

返回哈希集中的值列表,如果指定key的哈希集不存在,则返回空列表

  • 例子
10.31.17.225:6380> hset myval filed1 v1
(integer) 1
10.31.17.225:6380> hset myval filed2 v2
(integer) 1
10.31.17.225:6380> hvals myval
1) "v1"
2) "v2"
10.31.17.225:6380> hvals unexists
(empty list or set)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值