2013-05-28 28 views
1

我可以HGET mykey oldfield和存储value在我的应用程序和做HSET newfield value,我怎样才能避免复制我的价值,就像RENAMENX key newkey而使用哈希? 谢谢。如何在Redis中有效地重命名哈希域

+0

Redis中无法重命名哈希。正如@DidierSpezia所说,最快/最好的方法是使用Lua脚本。 – Eli

回答

5

有没有具体的命令来做到这一点,但您可以使用服务器端的Lua脚本来执行以下操作原子:

  • hget关键领域
  • hsetnx键野值
  • 如果成功,hdel关键字段

您将只支付一次往返,并且您可以处理错误(当新字段已存在时)。

+1

非常感谢,看来我必须将我的Redis升级到2.6,:P – Zoozy