Последнее обновление
ST_X
Описание
Если точка является корректным объектом типа POINT, возвращает значение её координаты X.
Синтаксис
ST_X( <point>)
Параметры
| Параметр | Описание |
|---|---|
<point> | Геометрический объект, из которого извлекается координата X. Должен быть корректным объектом типа POINT (2D-точкой), где диапазон X (долготы) составляет [-180, 180], а диапазон Y (широты) составляет [-90, 90]. |
Возвращаемое значение
Значение координаты X геометрического объекта в виде числа с плавающей запятой двойной точности (Double).
- Возвращает координату X точки (число с плавающей запятой двойной точности, Double), если входное значение является корректным объектом POINT.
- Возвращает NULL, если входное значение является NULL, объектом типа, отличного от POINT, пустой точкой (POINT EMPTY) или некорректной точкой (например, 3D-точкой).
Пример
Извлечение координаты X корректной точки
SELECT ST_X(ST_Point(24.7, 56.7));
+----------------------------+
| st_x(st_point(24.7, 56.7)) |
+----------------------------+
| 24.7 |
+----------------------------+
На вход подаётся пустая точка (POINT EMPTY)
mysql> SELECT ST_X(ST_GeometryFromText("POINT EMPTY"));
+------------------------------------------+
| ST_X(ST_GeometryFromText("POINT EMPTY")) |
+------------------------------------------+
| NULL |
+------------------------------------------+
На вход подаётся 3D-точка (не поддерживается)
mysql> SELECT ST_X(ST_GeometryFromText("POINT (10 20 30)"));
+-----------------------------------------------+
| ST_X(ST_GeometryFromText("POINT (10 20 30)")) |
+-----------------------------------------------+
| NULL |
+-----------------------------------------------+
На вход подаётся NULL
mysql> SELECT ST_X(NULL);
+------------+
| ST_X(NULL) |
+------------+
| NULL |
+------------+
Долгота выходит за допустимый диапазон
mysql> SELECT ST_X(ST_Point(244.7, 56.7));
+-----------------------------+
| ST_X(ST_Point(244.7, 56.7)) |
+-----------------------------+
| NULL |
+-----------------------------+
Широта выходит за допустимый диапазон
mysql> SELECT ST_X(ST_Point(44.7, 156.7));
+-----------------------------+
| ST_X(ST_Point(44.7, 156.7)) |
+-----------------------------+
| NULL |
+-----------------------------+