Ms access 横向/远距离比较
我在想怎么做时遇到了一些麻烦。我拥有的是一个访问表上160K个位置的列表,每个位置都有lat和long坐标。我试图找出如何创建一个列,将列表中的一个项目与其他项目进行比较,以返回以英里为单位的最近距离 我已经想出了如何使用哈弗森公式进行1比1的比较,但我在尝试自动化其余部分时迷失了方向 这基本上就是我想尝试制作的 Loc_ID Loc_Lat Loc_Long Min_Miles_Away 1 33.537214 -81.687378 674.48 4 42.16584 -87.845117 11.83 5 41.99558 -87.869057 11.83 6 41.85325 -89.486883 83.75 Loc_ID Loc_Lat Loc_Long Min_Miles_ 1 33.537214 -81.687378 674.48 4 42.16584 -87.845117 11.83 5 41.99558 -87.869057 11.83 6 41.85325 -89.486883 83.75 表格说明…Ms access 横向/远距离比较,ms-access,vba,Ms Access,Vba,我在想怎么做时遇到了一些麻烦。我拥有的是一个访问表上160K个位置的列表,每个位置都有lat和long坐标。我试图找出如何创建一个列,将列表中的一个项目与其他项目进行比较,以返回以英里为单位的最近距离 我已经想出了如何使用哈弗森公式进行1比1的比较,但我在尝试自动化其余部分时迷失了方向 这基本上就是我想尝试制作的 Loc_ID Loc_Lat Loc_Long Min_Miles_Away 1 33.537214 -81.687378 674.48 4
位置1距离位置5最近(相距674.48英里)
位置4离位置5最近(相距11.83英里)
位置5距离位置4最近(相距11.83英里)
位置6距离位置5最近(相距83.75英里)
任何帮助都将不胜感激。您可以进行笛卡尔连接,即没有where的连接。它将把每一行与每一行连接起来。您可以通过简单地将SQL写入查询的SQL视图来实现这一点 SELECT * FROM locations a, locations b 挑选* 地点a、地点b 接下来,您可以计算该表上的距离(我想您已经有了该代码,所以只需插入函数)。 最后,您可以按分钟分组 SELECT loc_id, loc_lat, loc_long, MIN(calulated_distance) as min_miles_away FROM myCalculatedQuery 选择loc_id、loc_lat、loc_long、MIN(计算距离)作为最小距离 从myCalculatedQuery