Mysql Spatialite查找给定lat/lon的最近节点
我为此挣扎了几天,我不知道为什么这个问题是错误的。。 我想找到给定纬度/经度的最近点Mysql Spatialite查找给定lat/lon的最近节点,mysql,sqlite,spatialite,Mysql,Sqlite,Spatialite,我为此挣扎了几天,我不知道为什么这个问题是错误的。。 我想找到给定纬度/经度的最近点 SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571)) FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))limit 1 它总是返回第一行,无论我使用什么点。然后我尝试删除“limit1”: 结果很奇怪。。。结果是按rid而
SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))limit 1
它总是返回第一行,无论我使用什么点。然后我尝试删除“limit1”:
结果很奇怪。。。结果是按rid而不是距离排序的,我想这就是为什么它总是返回第一行。我的问题错了吗?或者,Spatialite中有一个bug
谢谢]在sql语句中,您可以比较不同的距离
您能否从SQLite命令行工具中为适当定制的玩具数据库提供
.dump
作为一种工具?您在两种距离计算中都没有使用StartPoint
。但这看起来确实像一个bug。选择rid、AsEWKT(起点(几何))、AsEWKT(几何)限制5显示什么?你能把这个加到问题上吗?
SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))