Compartir a través de


Elemento Join (Vista)

Se aplica a: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013

Se usa para combinar dos listas para consultas.

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

Elementos y atributos

En las siguientes secciones se describen los atributos, elementos secundarios y elementos primarios.

Atributos

Atributo Descripción
Tipo
Necesario. "LEFT" significa una combinación externa izquierda. "INNER" significa una combinación interna.
ListAlias
Opcional. Especifica un nombre alternativo para la lista externa. Esto puede resultar útil cuando hay dos combinaciones para la misma lista. Se necesitan alias distintos para diferenciar las combinaciones.

No es necesario asignar explícitamente el alias al nombre real de la lista externa porque las combinaciones solo se permiten a través de una relación de campo de búsqueda y la lista externa se especifica en la definición del campo Búsqueda.

Una vez definido este valor en un elemento Join, se usa como valor de un atributo List en dos lugares:
- En un elemento FieldRef que es un elemento secundario del elemento Eq del elemento Join .
- En un elemento Field que es un elemento secundario de un elemento ProjectedFields .

Elementos secundarios

Elementos principales

Repeticiones

  • Mínimo: 1
  • Máximo: valor de la propiedad MaxQueryLookupFields para el objeto SPWebApplication que contiene la lista principal que se está consultando. El valor predeterminado del sistema es 8.

Comentarios

El elemento Join se traslada a la instrucción SQL JOIN. El elemento Join refactoriza el elemento Eq para especificar los campos principales y externos en los que se realizará la combinación. El campo principal debe definirse como un campo de búsqueda para el campo externo.

Ejemplo

A continuación se muestra un ejemplo de dos elementos Join ; ambas son combinaciones externas izquierdas. CustomerName es un campo de búsqueda en una lista pedidos. Busca en el campo id. de una lista de clientes. La lista De clientes, a su vez, tiene un campo CityName que es un campo de búsqueda para una lista de ciudades.

El primer elemento Join asigna "customers" como alias para la lista Customers. El elemento secundario Eq define la combinación utilizando los mismos campos de origen y de destino que constituyen la relación de búsqueda. El segundo elemento Join asigna "customerCities" como alias a la lista Cities. Define la combinación en paralelo a la relación de búsqueda existente entre las listas Customer y Cities.

Los alias son importantes para las listas debido a que puede haber más de una combinación para la misma lista y se necesitan alias distintos para diferenciar estas combinaciones. Por ejemplo, además de las combinaciones de pedidos a clientes y de clientes a ciudades, también puede haber combinaciones de pedidos a proveedores y de proveedores a ciudades. En el caso de la última combinación, se asignaría un alias diferente, por ejemplo, "supplierCities", a la lista Ciudades de la que se usa para la unión de cliente a ciudades.

<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>