Operações JOIN

A associação de fontes de dados de duas é a associação de objetos em uma fonte de dados com objetos que compartilham um atributo comum em outra fonte de dados.

Ingressando é uma operação importante em consultas que não podem ser seguidos cujos relacionamentos entre si diretamente de fontes de dados de destino.Na programação orientada a objeto, isso pode significar uma correlação entre objetos que não é modelado, como o retroativamente a direção de uma relação unidirecional.Um exemplo de uma relação unidirecional é uma classe de cliente que tenha uma propriedade do tipo cidade, mas a classe da cidade não tem uma propriedade que é uma coleção de objetos Customer.Se você tiver uma lista de objetos de cidade e você deseja localizar todos os clientes em cada cidade, você pode usar uma operação join para encontrá-los.

Os métodos de associação fornecidos na LINQ framework são Join e GroupJoin. Esses métodos executam equijoins ou associações que coincidir com duas fontes de dados com base na igualdade de suas chaves.(Para comparação, suporta Transact-SQL ingressar operadores diferentes de 'equals', por exemplo o ' operador less than'). Em termos de banco de dados relacional, Join implementa uma associação interna, um tipo de associação na qual somente aqueles objetos que têm uma correspondência no conjunto de dados são retornados.O GroupJoin método tem equivalente direto em termos de banco de dados relacional, mas ele implementa um superconjunto de junções internas e associações externas à esquerda. Uma associação externa esquerda é uma associação que retorna cada elemento da primeira fonte de dados (à esquerda), mesmo se ele não tem nenhum elemento correlacionado na fonte de dados.

A ilustração a seguir mostra uma exibição conceitual de dois conjuntos e os elementos dentro os conjuntos que estão incluídos em uma associação interna ou uma junção externa esquerda.

Dois círculos sobrepostos mostrando interna/externa.

Métodos

Nome do método

Descrição

C# Expressão de consulta sintaxe

Visual BasicSintaxe de expressões de consulta

Mais informações

Join

Associa duas seqüências com base nas funções do seletor de chave e extrai os pares de valores.

join … in … on … equals …

From x In …, y In … Where x.a = y.a

- ou -

Join … [As …]In … On …

Enumerable.Join

Queryable.Join

GroupJoin

Une duas seqüências com base nas funções do seletor de chave e as correspondências resultantes para cada elemento de grupos.

join … in … on … equals … into …

Group Join … In … On …

Enumerable.GroupJoin

Queryable.GroupJoin

Consulte também

Tarefas

How to: Formulate Joins and Cross-Product Queries (LINQ to SQL)

Como: associação usando chaves compostas (guia de programação do C#)

Como: associar-se o conteúdo de arquivos diferentes (LINQ)

Como: ordem dos resultados de uma cláusula de associação (guia de programação do C#)

Como: executar operações de associação personalizado (guia de programação do C#)

Como: realizar associações agrupadas (guia de programação C#)

Como: realizar interna associações (guia de programação C#)

Como: executar esquerda junções externas (guia de programação do C#)

Como: preencher as coleções de objetos de várias fontes (LINQ)

Referência

System.Linq

Tipos anônimos (guia de programação do C#)

cláusula JOIN (referência de C#)

(Visual Basic) da cláusula de associação

Conceitos

Visão geral operadores de consulta padrão

Tipos anônimos (Visual Basic)

Tipos de associações