Обзор соединений и связей

Посредством общего поля, получившего название ключевого, вы можете связывать записи одной таблицы с записями в другой таблице. Например, вы можете связать таблицу с информацией о собственниках участков со слоем этих участков, поскольку у них имеется общее поле идентификации участка. Создать эти ассоциации можно разными способами, включая временное объединение или связывание таблиц на карте или создание классов отношений в базе геоданных, что позволяет получить постоянные ассоциации. Соединения также могут зависеть от пространственного местоположения.

Информация о соединениях и связях сохраняется в свойствах слоя. Чтобы эта информация стала доступна, дважды щелкните слой, чтобы открылись Свойства слоя, и выберите Соединения или Связи.

Присоединение атрибутов из таблицы

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

Обычно к слою присоединяют таблицу с данными на основании значений поля, которое присутствует в обеих таблицах. Название поля не обязательно должно совпадать, но тип данных должен быть одинаковым; числа соединяются с числами, текст с текстом и т.д. Можно выполнить соединение инструментом геообработки Добавить соединение. При выполнении атрибутивного соединения присоединяемые поля динамически добавляются к существующей таблице. Такие свойства полей, как псевдонимы, видимость и форматирование чисел, сохраняются и после добавления либо удаления соединения.

В зависимости от организации ваших данных вам может понадобиться суммирования данных в таблице перед ее присоединением к слою. При суммировании таблицы получается новая статическая таблица с суммарной статистикой. В продолжение этого процесса можно создавать различные виды статистики, в том числе, подсчитать, количество, среднее значение, сумму, минимум и максимум. Представьте, что вам нужно создать карту населения по штатам, а не по округам, а у вас есть данные только по округам. Просуммировав данные округов по штатам - в данном случае нужно найти сумму в каждом штате, - а затем присоединив вновь созданную выходную таблицу к слою штатов, мы получим нужную нам карту населения по штатам.

Соединение данных по местоположению (в пространстве)

Если слои на карте не имеют общего атрибутивного поля, их можно соединить с помощью инструмента геообработки Пространственное соединение, который соединяет атрибуты двух слоев в зависимости от местоположения объектов в этих слоях.

Используя пространственное соединение, вы сможете выполнять следующие рабочие процессы:

Пространственное соединение использует пространственные связи (ассоциации) между слоями, поля одного из которых будут добавлены в другой. В зависимости от типа соединения, вы можете присоединять как атрибуты, так и совокупность (минимум, максимум, среднее и т.д.) числовых атрибутов, из сопоставленного объекта в целевые объекты.

Пространственные соединения по умолчанию отличаются от соединений, управляемых атрибутами, а также от связей и от классов отношений тем, что они (пространственные соединения) не динамичные и требуют сохранения результатов в новом выходном слое. Если инструмент Пространственное соединение используется в скрипте или в модели, его производительность можно улучшить, используя виртуальную рабочую область вместо создания новой. Например, для записи в виртуальную рабочую область выходной путь этого инструмента будет включать рабочую область и имя: in_memory/outputFeature.

Удаление соединения

Чтобы удалить соединение, воспользуйтесь одним из перечисленных выше методов для доступа к элементам меню Соединения и откройте инструмент Удалить соединение. Вы можете использовать меню в открытой таблице атрибутов, вкладку Данные для слоя или автономной таблицы, выбранную на панели Содержание, или контекстное меню Соединения и Связи.

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

Привязка атрибутов одной таблицы к другой

Связи помогают обнаруживать в данных определенную информацию. Например, если вы выберете здание, вы можете найти всех арендаторов, которые занимают его. Точно так же, если вы выберете арендатора, вы найдете здание, в котором он арендует помещение (или несколько зданий, в случае, если он владеет сетью магазинов, расположенных в разных торговых центрах, – отношение многие-ко-многим).

В отличие от соединения, связывание таблиц просто устанавливает отношение между двумя таблицами. Связанные данные не добавляются в таблицу атрибутов слоя , как это происходит при соединении. Вместо этого вы можете обратиться к связанным данным через выбранные объекты или записи в слое или в таблице. Вы можете создать связь с помощью инструмента геообработки Добавить связь.

Связи, добавленные в слой или таблицу карты, по существу ничем не отличаются от классов простых отношений в базе геоданных, за исключением того, что они сохраняются в карте, а не в базе геоданных. Класс отношений хранит информацию о связях между объектами и записями в базе геоданных, и обеспечивает целостность ваших данных. Чтобы создать новый класс отношений, используйте инструмент Создать класс отношений или щелкните правой кнопкой мыши базу геоданных на панели Каталог, наведите курсор на Новый и выберите Отношение.

Если класс пространственных объектов в базе геоданных уже участвует в классе отношений, то создавать новую связь для таблиц не требуется. Она будет уже доступна для использования и появится в меню Связанные данные, которое можно использовать для просмотра связанных данных. Обратите внимание, что отношение многие-ко-многим определяется иначе, если ваши данные хранятся в базе геоданных.

Удаление связи

Чтобы удалить связь, воспользуйтесь одним из перечисленных выше способов для доступа к элементам меню Связи и откройте инструмент Удалить связи. Вы можете использовать меню в открытой таблице атрибутов, вкладку Данные для слоя или автономной таблицы, выбранную на панели Содержание, или контекстное меню Соединения и Связи.

В меню Связи можно, кроме того, удалить все связи. Вас попросят подтвердить действие, так как вернуть удаленные связи будет невозможно.

Связанные разделы