0
我为此奋斗了几天,我不确定为什么查询是错误的。 我想找到给定纬度/经度的最近点。Spatialite为给定的经纬度找到最近的节点
SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))limit 1
它总是返回第一行,nomatter我用什么点。然后我试图删除“极限1”:
SELECT rid,DISTANCE(geometry, MakePoint(-79.91759, 43.266571))
FROM room2f ORDER BY DISTANCE(Startpoint(geometry), MakePoint(-79.91759, 43.266571))
结果是很奇怪......结果被去掉排序,而不是距离,我想这就是为什么它总是返回第一行。我的查询错误了吗?或者,Spatialite有一个错误?
感谢] 1
你能为适当定制玩具数据库的[MCVE]提供的东西从SQLite的命令行工具'.dump'? – Yunnosch
您在两个距离计算中都没有使用'StartPoint'。但这确实看起来像一个错误。 –
什么'SELECT rid,AsEWKT(起点(几何)),AsEWKT(几何)LIMIT 5'显示?你可以添加这个问题吗? – BradHards