如何查询我的排序集以获取包含某些字符的所有键?
“开始于”工作正常,但我需要“包含”。 我正在使用下面的查询“开始于”,效果很好
zrangebylex zset [2110 "[2110\xff" LIMIT 0 10
有什么办法可以做\xff query\xff 吗?
最佳答案
没有。 Redis 的 Sorted Sets 的字典序范围只能用于前缀搜索。
请注意,通过使用另一个存储值反转的 Sorted Set,您还可以对值执行后缀搜索。然而,即使结合这两种方法也无法提供您需要的功能。
或者,您可以执行前缀搜索,然后使用 Lua 脚本过滤结果。根据您的查询和数据,这可能是也可能不是有效的方法。
您也可以考虑在 Redis 之上实现全文索引机制,但在大多数情况下这会有点矫枉过正,此外,已有经过测试的技术已经做到了这一点。
关于redis - ZRANGEBYLEX 是否支持包含查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33747724/