空间数据格式
seekdb 支持两种标准的空间数据格式用于表示查询中的几何对象:
-
Well-Know Text Format(WKT)
-
Well-Know Binary Format(WKB)
WKT
WKT 是基于EBNF(Extended Backus Naur Form)定义的。WKT 既可以作为数据格式(本文中称作 WKT-Data),也可以在 GIS 用于 SRS 的定义(在本文中简称 WKT-SRS)。
Point
Point 不使用逗号分隔。格式示例如下:
POINT(15 20)
如下示例使用 ST_X() 从 Point 对象中提取 X 坐标。 第一个直接使用 Point() 函数生成对象。第二个使用通过 ST_GeomFromText() 转换为 Point 的 WKT 表示。
SELECT ST_X(Point(15, 20));
返回结果如下:
+---------------------+
| ST_X(Point(15, 20)) |
+---------------------+
| 15 |
+---------------------+
1 row in set (0.001 sec)
SELECT ST_X(ST_GeomFromText('POINT(15 20)'));
返回结果如下:
+---------------------------------------+
| ST_X(ST_GeomFromText('POINT(15 20)')) |
+---------------------------------------+
| 15 |
+---------------------------------------+
1 row in set (0.001 sec)
Line
Line 是由多个点组成,点之间使用逗号隔开。格式示例如下:
LINESTRING(0 0, 10 10, 20 25, 50 60)
Polygon
Polygon 是由至少一条外环(闭合的线)以及若干条(可以是 0 条)内环(闭合的线)组成。格式示例如下:
POLYGON((0 0,10 0,10 10,0 10,0 0),(5 5,7 5,7 7,5 7, 5 5))