当前位置:  开发笔记 > 编程语言 > 正文

使用Redis更新排序集

如何解决《使用Redis更新排序集》经验,为你挑选了1个好方法。

目前,我正在尝试更新已排序的集合成员。查看文档,使用ZADD似乎可以更新成员(如果其分数已经存在)。但是,使用此代码尝试更新成员时,

db.zadd("users", parseInt(key, 10) + 1, JSON.stringify(newData));

....即使分数已经存在,也会添加一个新条目!如何使用Redis更新排序的集合成员?



1> Eli..:

只要条目之间的键和成员匹配,ZADD将替换旧成员的分数:

redis localhost:6379> ZADD test-key 40 blah
(integer) 1
redis localhost:6379> ZRANGE test-key 0 -1 WITHSCORES
1) "blah"
2) "40"
redis localhost:6379> ZADD test-key 45 blah
(integer) 0
redis localhost:6379> ZRANGE test-key 0 -1 WITHSCORES
1) "blah"
2) "45"

也许您在ZADD命令之间使用了不同的键或成员?

推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有