Redis georadius 但排序顺序不同

标签 redis spring-data-redis

我正在使用 Redis 来存储和获取有关用户的有趣信息,并将其显示为提要。

假设我需要获取给定半径 R (WITHDISTance) 内的所有列表,但按时间倒序排序,而不是按距离排序(与 redis GEORADIUS 命令一样)。更具体地说,最近的列表(半径为 R)应该在顶部,即使它是所有列表中最远的。

是否有可能单独使用 geoset 来做到这一点?否则我如何使用一些 redis 数据结构组合来实现这一点?

寻找一些干净高效的方法

最佳答案

您需要执行半径查询并将结果与​​另一个具有相同元素但分数是时间戳的排序集相交。然后,以相反的顺序对结果相交进行分页。

关于Redis georadius 但排序顺序不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45431647/

相关文章:

python - 将任务发送给特定的 celery 工作人员

nosql - 在redis中存储时间序列

java - 如何使用 Spring Data Redis Repositories 构建动态查询?

java - Spring Data Redis - 存储日期时出现问题

database - An Efficient Lookup Table in redis--使用redis sets实现?

java - PubSub 在 Redis 中不工作

nosql - 在我的错误跟踪应用程序中使用 redis/nosql 而不是 postgres 会有什么好处吗?

java - 在Redis中,如何根据值查询哈希数据

spring - Spring Boot 应用程序中的多个 RedisConnectionFactories

spring - Spring Data 的目的及其抽象级别是什么?