gpt4 book ai didi

algorithm - oracle中带点数据的表没有索引的最近邻查询的pl/sql代码

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:20:08 26 4
gpt4 key购买 nike

我正在尝试建立一个程序来获得 k 个最近的邻居点到具有选定 ID 的点。我需要在不使用任何空间定位器功能(如 sdo_geometry 或 nn)的情况下执行此操作。

基本上我在 oracle 中有一个表,其 ID、Data_X、Data_Y。假设我的表中有 10 个条目,我需要 3 个最接近虚构点 target_x、target_y 的点。

我们需要计算表中每个点与我给定的虚构点的欧氏距离。我只是不知道 pl/sql 中的算法会返回最近的邻居 ID。

最佳答案

计算每个点与所选点之间的距离(毕达哥拉斯),并按距离排序。伪sql:

select id from points
order by sqrt(sqr(Data_x - target_x) + sqr(Data_y - target_y))

前 3 行是最近的 3 个点。

关于algorithm - oracle中带点数据的表没有索引的最近邻查询的pl/sql代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5538323/

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