Доступные версии документации

Получить заданный объект группы
Функция

Получение заданного объекта из группы геометрических объектов.

Спецификация
  GeometryN (<группа объектов>[,<номер>])
<группа объектов> – геометрический объект типа GEOMETRYCOLLECTION, MULTIPOINT, MULTILINESTRING или MULTIPOLYGON;
<номер> – порядковый номер требуемого объекта.
Синтаксические правила
  1. Аргумент <номер> задает порядковый номер объекта в группе геометрических объектов. Отсчет начинается с 1.

  2. Если <номер> не задан, по умолчанию принимается значение 1.

Возвращаемое значение
  1. В случае нормального завершения – геометрический объект с заданным порядковым номером из состава группы объектов.

    Тип возвращаемого объекта:

    • char для геометрического объекта <группа объектов> типа VARBYTE. Длина строки вычисляется динамически и не может превышать 4000 символов;

    • blob для геометрического объекта <группа объектов> типа BLOB. В этом случае для получения значения типа char необходимо использовать SQL-функцию getblobstr (см. документ «СУБД ЛИНТЕР. Справочник по SQL»);

    • NULL, если <группа объектов> пуста.

  2. Код завершения СУБД ЛИНТЕР (при неправильном аргументе функции).

Примеры
  1. геометрический VARBYTE-объект

    SELECT AsText(GeometryN(GeomFromText('GeometryCollection(Point(1 1),LineString(2 2, 3 3))'),1));
    
    |POINT (1 1)                             |
    
  2. геометрический BLOB-объект

    select getblobstr(astext(GEOMETRYN(SYMDIFFERENCE(GEOM,
    GeomFromText('POLYGON (5 5,5 25,25 25,25 5,5 5)', 4284)), 2)), 1, 80)
    from GTEST;
    
    |POLYGON ((25 10,25 5,5 5,5 25,10 25,10 10,25 10)) |
Заметили ошибку?
Выделите текст и нажмите Ctrl + Enter