Поделиться через


Элемент Join (View)

Дата последнего изменения: 9 марта 2015 г.

Применимо к: SharePoint Foundation 2010

В этой статье
Атрибуты
Дочерние элементы
Родительские элементы
Вхождения

Используется для объединения двух списков для запросов.

<Join   Type= "LEFT" | "INNER"  ListAlias= "TEXT"></Join>

Атрибуты

Атрибут

Описание

Тип

Обязательный. "LEFT" означает левое внешнее соединение. "INNER" означает внутреннее соединение.

ListAlias

Необязательно. Определяет альтернативное имя внешнего списка. Это полезно, если в одном списке два соединения. Различные псевдонимы нужны, чтобы отличать соединения.

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

После задания значения в элементе Join, оно используется как значение атрибута List в двух местах.

  • В элементе FieldRef, потомке элемента Eq, который содержится в элементе Join.

  • В элементе Field, потомке элемента ProjectedFields.

Дочерние элементы

Eq

Родительские элементы

Joins

Вхождения

Минимум: 1

Максимум: значение свойства MaxQueryLookupFields для объекта SPWebApplication, который содержит основной запрашиваемый список. По умолчанию значение равно 8.

Примечания

Элемент Join переводится в оператор SQL JOIN. Элемент Join преобразует элемент Eq, чтобы определить основное и внешнее поле, в которых нужно создать соединение. Основное поле должно быть задано как поле подстановки для внешнего поля.

Пример

Далее представлен пример двух элементов Join; оба из них — левые внешние соединения. CustomerName — это поле подстановки в списке "Заказы". Оно просматривает поле ID списка заказчиков. У списка заказчиков, в свою очередь, есть поле CityName, поле подстановки для списка городов. Первый элемент Join назначает "customers" в качестве псевдонима списка заказчиков. Потомок элемента Eq определяет соединение с помощью тех же исходных и конечных полей, которые составляют связь подстановки. Второй элемент Join назначает "customerCities" в качестве псевдонима списка городов. Он определяет соединение параллельно существующей связи подстановки между списком заказчиков и списком городов.

Псевдонимы полезны для списков, так как в одном списке может быть несколько соединений и для их различия нужны разные псевдонимы. Например, в дополнение к соединениям заказов и заказчиков, и заказчиков и городов могут быть также соединения заказов и поставщиков, а также поставщиков и городов. В случае последнего соединения списку городов нужно назначить другой псевдоним, например "supplierCities", отличный от того, что используется для соединения заказчиков и городов.

<Joins>
  <Join Type=’LEFT’ ListAlias=’customers’>
    <Eq>
      <FieldRef Name=’CustomerName’ RefType=’Id’ />
      <FieldRef List=’customers’ Name=’ID’ />
    </Eq>
  </Join>

  <Join Type=’LEFT’ ListAlias=’customerCities’>
    <Eq>
      <FieldRef List=’customers’ Name=’CityName’ RefType=’Id’ />
      <FieldRef List=’customerCities’ Name=’ID’ />
    </Eq>
  </Join>
</Joins>