本文介绍时空函数中的构造函数。
ST_GeomFromText
调用ST_GeomFromText
函数返回与指定WKT字符串对应的Geometry对象。
语法
geometry ST_GeomFromText(string wkt);
参数
参数 | 描述 |
---|---|
wkt | 指定WKT字符串。 |
说明
- Geometry对象支持Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、GeometryCollection类型。
- 如果WKT格式中带有SRID,不支持WKT带有空间参考系信息,SRID(默认为4326)可以单独建列存储,仅作为标识。
- 可以创建任意数据类型的EMPTY。
示例
- Geometry对象为Point类型:
返回结果如下:SELECT ST_GeomFromText('POINT(1 1)');
+----------------------------------------------------+ | "ST_GeomFromText"('POINT(1 | | 1)') | +----------------------------------------------------+ | 0020000001000010E63FF00000000000003FF0000000000000 | +----------------------------------------------------+
- Geometry对象为EMPTY:
返回结果如下:SELECT ST_GeomFromText('POLYGON EMPTY');
+--------------------------------+ | "ST_GeomFromText"('POLYGON | | EMPTY') | +--------------------------------+ | 0020000003000010E600000000 | +--------------------------------+
ST_LineFromMultiPoint
调用ST_LineFromMultiPoint
函数返回与指定MultiPoint对象对应的LineString对象。
语法
geometry ST_LineFromMultiPoint(geometry aMultiPoint);
参数
参数 | 描述 |
---|---|
aMultiPoint | 指定MultiPoint对象,可以使用ST_Collect 函数将Point对象组合成MultiPoint对象。 |
示例
SELECT ST_AsText(ST_LineFromMultiPoint(ST_Collect(ST_MakePoint(1,2),ST_MakePoint(3,4),ST_MakePoint(5,6)))) AS astext;
返回结果如下:+-------------------------+
| astext |
+-------------------------+
| LINESTRING(1 2,3 4,5 6) |
+-------------------------+
ST_MakePoint
调用ST_MakePoint
函数构建一个Point对象。
语法
geometry ST_MakePoint(double x, double y);
参数
参数 | 描述 |
---|---|
x | 经度x值。DOUBLE类型,如果输入的数据类型为INTEGER或者LONG会自动转换为DOUBLE类型。 |
y | 纬度y值。DOUBLE类型,如果输入的数据类型为INTEGER或者LONG会自动转换为DOUBLE类型。 |
说明 不支持设定空间参考系和三维对象。
示例
SELECT ST_AsText(ST_MakePoint(1, 2));
返回结果如下:+--------------------------------+
| "ST_AsText"("ST_MakePoint"(1, |
| 2)) |
+--------------------------------+
| POINT (1 2) |
+--------------------------------+