gpt4 book ai didi

mysql - Spatialite 找到给定纬度/经度的最近节点

转载 作者:行者123 更新时间:2023-11-29 18:46:01 24 4
gpt4 key购买 nike

我为此苦苦挣扎了几天,我不知道为什么查询是错误的..我想找到给定纬度/经度的最近点。

SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))limit 1

无论我使用哪个点,它总是返回第一行。然后我尝试删除“limit1”:

SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))

结果很奇怪......结果是按rid而不是距离排序的,我想这就是为什么它总是返回第一行。我的查询有误吗?或者,Spatialite 存在错误?

谢谢![enter image description here ] 1

最佳答案

在你的sql语句中你比较不同的距离..

  1. 从一般的几何图形到您的特定点(据我所知,这是从该点到您的几何图形的最短距离)。
  2. 从几何图形的第一个点到特定点。

因此,您也会得到不同的结果排序!

参见距离函数的引用: http://www.gaia-gis.it/gaia-sins/spatialite-sql-4.2.0.html#p13

关于mysql - Spatialite 找到给定纬度/经度的最近节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44641456/

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