在redis文档中,有以下示例 ZRANGEBYLEX
ZADD myindex 0 0056:0028.44:90
ZADD myindex 0 0034:0011.00:832
ZRANGEBYLEX myindex [0056:0010.00 [0056:0030.00
1) "0056:0028.44:90"
这很简单。
但是,如果我想对以下示例应用相同的技术,
127.0.0.1:6379> zadd feedbacks 1 feedback1 2 feedback2 3 feedback3 1 feedback4
(integer) 4
127.0.0.1:6379> ZRANGEBYLEX feedbacks [feed [feed
(empty list or set)
我得到一个空集。
我希望看到四个值(feedback1
至feedback4
)
为什么ZRANGEBYLEX
我的测试样本不合格?
失败是因为他们的分数不同。ZRANGEBYLEX仅适用于相同分数的子集。
参见https://redis.io/commands/ZRANGEBYLEX
当以相同的 分数插入排序集中的所有元素时,为了强制按字典顺序排序,此命令将返回键中排序集中的所有元素,且其值介于min和max之间。
如果排序集中的元素具有不同的分数,则返回的 元素不确定。
排序集具有在相同分数子集中按字典顺序排序的属性。这给了他们第二个用例,按字典顺序排序,但是在这种情况下,您添加了所有具有相同分数的元素。
因此,您必须选择如何使用排序集:
不能同时拥有。然后,您需要两个排序的集合。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句