Redis数据库中HSET和HMSET方法有什么区别

sac*_*hin 46 database redis

在我的应用程序即时通讯使用redis数据库.我已经完成了他们的文档,但我找不到HSET和HMSET之间的区别.

Ser*_*sev 65

HMSET与HSET类似,但它允许一次设置多个字段/值对.

更新

截至2017年10月,当前redis版本(我的机器上为4.0.2)的HSET也可以设置多个键值对.

__PRE__

所以这些命令现在是相同的.

  • 根据官方文档:“根据 Redis 4.0.0,HMSET 被视为已弃用。请在新代码中使用 HSET。” (8认同)

Hri*_*hra 18

HSET关键字段值:

将key中存储的哈希中的字段设置为value.如果key不存在,则创建一个包含哈希的新密钥.如果哈希中已存在字段,则会覆盖该字段.

HMSET关键字段值[字段值...]

将指定的字段设置为key中存储的哈希值中的相应值.此命令将覆盖散列中的所有现有字段.如果key不存在,则创建一个包含哈希的新密钥.

有关更多redis命令的信息,请单击此处.


Gun*_*kar 6

命令之间的唯一区别HSET是命令的HMSET返回值。

HSET返回值(整数回复):

  • #如果该字段是哈希中的新字段并且已设置值。(其中#是创建的新字段的数量)
  • 如果该字段已存在于哈希中并且值已更新,则为 0。

HMSET 返回一个简单的字符串作为回复。