ST_Distance()¶
返回两个几何值之间的最小距离,单位为笛卡尔单位或大地测量米。
语法¶
ST_Distance(geom1, geom2)
ST_Distance(geom1, geom2, srid)
别名:无。
参数说明¶
geom1 和 geom2 均为 GEOMETRY 或均为 GEOMETRY32;srid 为 INT64 计算坐标系覆盖值。
返回值¶
GEOMETRY 输入返回 FLOAT64;GEOMETRY32 输入返回 FLOAT32。
使用说明¶
未指定覆盖值时,两个几何值必须具有相同 SRID。SRID 4326 返回米;其他受支持 SRID 返回笛卡尔单位。
可选 SRID 覆盖操作数的 SRID,且会检查范围。
示例¶
DROP DATABASE IF EXISTS geo_distance_demo;
CREATE DATABASE geo_distance_demo;
USE geo_distance_demo;
SELECT ST_Distance(ST_GeomFromText('POINT(0 0)'), ST_GeomFromText('POINT(3 4)')) AS cartesian_distance,
ST_Distance(ST_GeomFromText('POINT(0 0)'), ST_GeomFromText('POINT(1 0)'), 4326) AS geodesic_meters;
DROP DATABASE geo_distance_demo;
另请参阅¶
ST_Distance_Sphere()、ST_Length()。