gpt4 book ai didi

java - 如何从按距离排序的JPA实体中获得结果?

转载 作者:行者123 更新时间:2023-11-29 12:33:47 24 4
gpt4 key购买 nike

我正在编写一个移动应用程序,用户必须从列表中选择一个位置。所有位置都存储在Postgres数据库中,使用来自Play应用程序的JPA。
我想做的是获取应用程序中的用户位置,然后请求获取离该用户最近的前20或50个位置。
如果我使用自己的数据结构,我会使用KD树。但是,我对JPA/Play/PostgreSQL还很陌生,所以我不确定如何手动处理数据持久性。
根据我目前的知识,我唯一能想到的是查看每个位置并确定其距离,但在如此庞大的数据库中,这将是非常缓慢的。
有没有一个查询我可以运行说“给我X第一个结果,按距离这个纬度和经度排序?”?
编辑:我正在使用Heroku,由于该应用程序处于开发的早期阶段,如果您想在应用程序中使用PostGIS,我希望不必支付Heroku每月所需的200美元。

最佳答案

您真的不想为此滚动您自己的数据结构,但幸运的是您正在使用PostgreSQL,所以您很幸运。使用PostGIS。它将比任何你能在合理的时间内建造的东西都要快几个数量级。

关于java - 如何从按距离排序的JPA实体中获得结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15588453/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com