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

如何查询cities空间表中端点距离最大的城市

城市距离查询SQL实现

场景1:查询所有城市中,两个城市间距离最大的城市对

对应SQL语句如下:

SELECT 
    a.city AS city_1,
    b.city AS city_2,
    ST_Distance(a.geom, b.geom) AS max_distance
FROM cities a
INNER JOIN cities b 
    ON a.city_id < b.city_id -- 避免重复计算同一对城市,排除自身配对的无效数据
ORDER BY max_distance DESC
LIMIT 1;

场景2:查询单个城市自身几何形状最远两个端点距离最大的城市

对应SQL语句如下:

SELECT 
    city,
    ST_Length(ST_LongestLine(geom, geom)) AS city_max_span
FROM cities
ORDER BY city_max_span DESC
LIMIT 1;
  • 性能优化提示:如果数据量较大,可提前创建空间索引提升查询效率
CREATE INDEX idx_cities_geom ON cities USING GIST(geom);

说明:表中使用的坐标系26986为NAD83 / Massachusetts Mainland平面坐标系,上述查询返回的距离单位默认为米,可根据需求自行换算为公里等其他单位。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 15:27:02