Spec-Zone.ru › MySQL 8.4

14.16.4 Функции, создающие значения геометрии из значений WKB

Эти функции принимают в качестве аргументов BLOB, содержащий представление Well-Known Binary (WKB), и, необязательно, идентификатор пространственной системы координат (SRID). Они возвращают соответствующую геометрию. Описание формата WKB см. в разделе Формат Well-Known Binary (WKB).

Функции в этом разделе обнаруживают аргументы в декартовых или географических пространственных системах координат (SRS) и возвращают результаты, соответствующие SRS.

ST_GeomFromWKB() принимает значение WKB любого типа геометрии в качестве первого аргумента. Другие функции предоставляют функции построения, специфичные для типа, для построения значений геометрии каждого типа геометрии.

До MySQL 8.4 эти функции также принимали объекты геометрии, возвращаемые функциями из раздела 14.16.5 «Функции MySQL, специфичные для создания значений геометрии». Аргументы геометрии больше не допускаются и вызывают ошибку. Чтобы перенести вызовы из использования аргументов геометрии на использование аргументов WKB, следуйте этим рекомендациям:

  • Перепишите конструкции, такие как ST_GeomFromWKB(Point(0, 0)), как Point(0, 0).

  • Перепишите конструкции, такие как ST_GeomFromWKB(Point(0, 0), 4326), как ST_SRID(Point(0, 0), 4326) или ST_GeomFromWKB(ST_AsWKB(Point(0, 0)), 4326).

Если не указано иное, функции в этом разделе обрабатывают свои геометрические аргументы следующим образом:

  • Если аргумент WKB или SRID NULL, возвращаемое значение равно NULL.

  • По умолчанию географические координаты (широта, долгота) интерпретируются в порядке, заданном пространственной системой координат геометрических аргументов. Может быть задан необязательный аргумент options для переопределения порядка осей. options состоит из списка key=value, разделенных запятыми. Единственное допустимое значение key — axis-order, с допустимыми значениями lat-long, long-lat и srid-defined (по умолчанию).

    Если аргумент options равен NULL, возвращаемое значение равно NULL. Если аргумент options недействителен, возникает ошибка, указывающая причину.

  • Если аргумент SRID относится к неопределенной пространственной системе координат (SRS), возникает ошибка.

  • Для геометрических аргументов географических SRS, если у любого аргумента долгота или широта находятся вне диапазона, возникает ошибка:

    • Если значение долготы не входит в диапазон (−180, 180], возникает ошибка.

    • Если значение широты не входит в диапазон [−90, 90], возникает ошибка.

    Указанные диапазоны приведены в градусах. Если SRS использует другую единицу измерения, диапазон использует соответствующие значения в этой единице измерения. Точные пределы диапазона немного отличаются из-за арифметики с плавающей запятой.

Эти функции доступны для создания геометрии из значений WKB:

  • ST_GeomCollFromWKB(wkb [, srid [, options]]), ST_GeometryCollectionFromWKB(wkb [, srid [, options]])

    Создает значение GeometryCollection, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_GeomFromWKB(wkb [, srid [, options]]), ST_GeometryFromWKB(wkb [, srid [, options]])

    Создает значение геометрии любого типа, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_LineFromWKB(wkb [, srid [, options]]), ST_LineStringFromWKB(wkb [, srid [, options]])

    Создает значение LineString, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_MLineFromWKB(wkb [, srid [, options]]), ST_MultiLineStringFromWKB(wkb [, srid [, options]])

    Создает значение MultiLineString, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_MPointFromWKB(wkb [, srid [, options]]), ST_MultiPointFromWKB(wkb [, srid [, options]])

    Создает значение MultiPoint, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_MPolyFromWKB(wkb [, srid [, options]]), ST_MultiPolygonFromWKB(wkb [, srid [, options]])

    Создает значение MultiPolygon, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

  • ST_PointFromWKB(wkb [, srid [, options]])

    Создает значение Point, используя его представление WKB и SRID.

    ST_PointFromWKB() обрабатывает свои аргументы, как описано во введении к этому разделу.

  • ST_PolyFromWKB(wkb [, srid [, options]]), ST_PolygonFromWKB(wkb [, srid [, options]])

    Создает значение Polygon, используя его представление WKB и SRID.

    Эти функции обрабатывают свои аргументы, как описано во введении к этому разделу.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/gis-wkb-functions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API