PostGIS 提供了两个点构造函数
ST_MakePoint(x,y,[z,[m]])
ST_Point(x,y)
或不支持 3DZ 或 4D 的兼容版本MySQL 支持 Point(x,y)
在 SQL Server 中,有没有先从两个数字输入或实数构造一个点而不先从文本开始?
我在“创建、构造和查询几何实例”的文档中没有看到采用数字的构造函数。
PostGIS 提供了一个名为ST_MakeLine(pt1,pt2)
. 它非常适合构建线条。MySQL 对LineString(pt1,pt2)
. 什么叫 SQL Server 模拟,它需要两个点并构造一个 LineString?
我查了一下LineString,但没有看到提到它。
这是一个关于 dbfiddle 的测试用例。
样本数据,
CREATE TABLE #tmp (
pt1 geometry,
pt2 geometry,
);
INSERT INTO #tmp(pt1,pt2) VALUES
(geometry::Point(1,1,4326), geometry::Point(2,2,4326)),
(geometry::Point(2,2,4326), geometry::Point(5,5,4326)),
(geometry::Point(3,3,4326), geometry::Point(4,4,4326)),
(geometry::Point(4,4,4326), geometry::Point(3,3,4326)),
(geometry::Point(5,5,4326), geometry::Point(4,4,4326));
Run Code Online (Sandbox Code Playgroud)
询问
SELECT pt1, pt2
'My Line' AS line -- what goes here
FROM #tmp;
Run Code Online (Sandbox Code Playgroud)
我希望“My Line”成为LineString
.
pt1 pt2 line
POINT (1 1) POINT (2 2) My Line
POINT (2 2) POINT …
Run Code Online (Sandbox Code Playgroud)