我有一条路线(如LINESTRING)和两辆有位置的车辆(如POINT)。我需要计算两个点之间的距离过的路线。
另外一个困难是,我认为在车辆此时不在路线上的情况下,还需要测量从该点到直线上最近点的距离。
我正在使用它来查找路线上的最近点:
SELECT ST_AsText(ST_ClosestPoint(pt,line)) AS cp_pt_line,
ST_AsText(ST_ClosestPoint(line,pt)) As cp_line_pt
FROM (SELECT 'POINT(100 100)'::geometry As pt,
'LINESTRING (20 80, 98 190, 110 180, 50 75 )'::geometry As line
) As foo;
Run Code Online (Sandbox Code Playgroud)
在查询中有可能吗?