如何在Redis中存储带有重复成员的排序数据?

3

我是Redis的新手,遇到了以下问题:

给定有序集合 myzset:[[1,“A”],[2,“B”],[3,“C”]]

我想在集合中添加 [4,“A”]。

到目前为止,如果我使用

ZADD myzset 4 "A"

因为成员"A"已经在集合中,我得到了以下结果:[[4,"A"],[2,"B"],[3,"C"]],而不是[[1,"A"],[2,"B"],[3,"C"],[4,"A"]]。请问如何插入数据,以便集合为[[1,"A"],[2,"B"],[3,"C"],[4,"A"]]?
1个回答

3
Redis的Sorted Sets(和普通Sets)不允许有重复的成员。您应该重新考虑您想要做什么(也许甚至编辑您的问题,解释您正在存储的数据以及您想如何检索它),并可能使用不同的方法和/或数据结构。
在必要且有意义地存储非唯一成员的情况下,通常会将某种唯一标识符连接到成员上。例如,如果您正在存储时间序列(例如来自设备的测量值),则会将时间戳作为分数存储,并将id:timestamp作为成员。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接