You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL中计算两点距离报错,请求排查错误原因

问题原因及解决方法

你的错误出在ST_GeomFromText的WKT(Well-Known Text)语法上:PostGIS要求POINT类型的坐标用空格分隔,而不是逗号。你用逗号分隔坐标导致解析器无法正确识别完整的坐标值,因此触发了parse error。

修正后的SQL查询

SELECT ST_DistanceSpheroid(geometry(a.location), ST_GeomFromText('POINT(28.828042 47.023565)', 4326), 'SPHEROID["WGS 84",6378137,298.257223563]')
FROM users a
WHERE a.id=1

额外注意

EPSG:4326(WGS84)坐标系的WKT坐标顺序是经度在前,纬度在后,如果你的原始坐标是纬度(47.023565)在前、经度(28.828042)在后,需要调换顺序,否则计算出的距离会对应错误的地理位置。

内容的提问来源于stack exchange,提问作者Dalama

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 22:45:38