RUS  ENG 

Пересечение слоев (SQL)

Пересечение слоев (SQL)

В запросе осуществляется работа с пространственными данными. 
В конструкции запроса используется оператор сравнения пространственных объектов между собой STWithin. Он проверяет объект, для которого вызвана функция, на вхождение в указанный пространственный объект сравнения.

Для внесения изменения в заданные столбцы таблицы(базы данных слоя) используется оператор UPDATE, он употребляется в связке с ключевым словом SET, после которого следует наименование обновляемых полей таблицы. 

После выражения WHERE, задаются критерии, по которым будут происходить обновления. 

В данном случае происходит обновление поля Адрес базы данных по потребителям (потребители водопроводной сети в структуре слоя имеют тип-5), при условии что, символ потребителя находится внутри площадного объекта здания. Условие выбора потребителей type=5, в версии сборки 7.0.0.5425 и выше задается typeid=5.


UPDATE [Пример водопроводной сети] SET [Пример водопроводной сети].[Адрес] =

[Здания].[Улица]+" "+[Здания].[Номер дома]
WHERE [Пример водопроводной сети].typeid=5 AND [Пример водопроводной сети].Geometry.STWithin([Здания].Geometry)

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

UPDATE L1 SET L1.[Адрес] = L2.[Улица]+" "+L2.[Номер дома]
FROM [Пример водопроводной сети] AS L1, [Здания] AS L2
WHERE L1.typeid=5 AND L1.Geometry.STWithin(L2.Geometry)


Сравнение пространственных объектов 

Смотреть видео


Возврат к списку

Последнее обновление — 07.02.2024 00:26:36