Последнее обновление
ST_LINEFROMTEXT
Описание
Преобразует строку WKT (Well Known Text) в представление объекта Line в памяти
Псевдоним
- ST_LINESTRINGFROMTEXT
Синтаксис
ST_LINEFROMTEXT( <wkt>)
Параметры
| Параметры | Описание |
|---|---|
<wkt> | Строка WKT, соответствующая типу LINESTRING, в формате: |
| "LINESTRING (x1 y1, x2 y2)" | |
| Здесь (x1 y1), (x2 y2) обозначают координаты вершин отрезка. Значения координат задаются числами (целыми или десятичными). |
Возвращаемое значение
Возвращает геометрический объект типа Line, который хранится в памяти во внутреннем формате пространственных данных Doris. Его можно напрямую передавать в качестве параметра другим пространственным функциям (например, ST_LENGTH, ST_INTERSECTS и т. д.) для выполнения вычислений.
- Возвращает NULL, если входная строка WKT некорректна (например, содержит менее 2 вершин, синтаксические ошибки, нечисловые координаты и т. д.).
- Возвращает NULL, если
имеет значение NULL или является пустой строкой.
Пример
Корректный объект типа LINE
mysql> SELECT ST_AsText(ST_LineFromText("LINESTRING (1 1, 2 2)"));
+-----------------------------------------------------+
| ST_AsText(ST_LineFromText("LINESTRING (1 1, 2 2)")) |
+-----------------------------------------------------+
| LINESTRING (1 1, 2 2) |
+-----------------------------------------------------+
Некорректный WKT (недостаточно вершин)
mysql> SELECT ST_LineFromText("LINESTRING (1 1)");
+-------------------------------------+
| ST_LineFromText("LINESTRING (1 1)") |
+-------------------------------------+
| NULL |
+-------------------------------------+
Некорректный WKT (синтаксическая ошибка)
mysql> SELECT ST_LineFromText("LINESTRING (1 1, 2 2");
+-----------------------------------------+
| ST_LineFromText("LINESTRING (1 1, 2 2") |
+-----------------------------------------+
| NULL |
+-----------------------------------------+
LineString с несколькими вершинами
mysql> SELECT ST_AsText(ST_LineFromText('LINESTRING (1 1, 2 2)'));
+-----------------------------------------------------+
| ST_AsText(ST_LineFromText('LINESTRING (1 1, 2 2)')) |
+-----------------------------------------------------+
| LINESTRING (1 1, 2 2) |
+-----------------------------------------------------+
Входное значение NULL
mysql> SELECT ST_LineFromText(NULL);
+-----------------------+
| ST_LineFromText(NULL) |
+-----------------------+
| NULL |
+-----------------------+