Logo pt.removalsclassifieds.com

Diferença entre junção esquerda e direita (com tabela)

Índice:

Anonim

Join é um moniker típico e elemento de comando que aparecerá de vez em quando ao lidar com SQL. A cláusula de junção facilita a combinação de registros de várias tabelas na coleta de dados. A junção gera uma tabela que pode ser usada sozinha ou combinada uma com a outra. Portanto, é recomendável compreender essas junções e as distinções entre elas para determinar a junção específica, bem como se a direita ou a esquerda devem ser escolhidas em casos únicos.

Junte-se à Esquerda vs Junte-se à Direita

A diferença entre a junção à esquerda e a junção à direita é que a incorporação de entradas não correspondidas é a principal distinção entre esses dois tipos de junções. LEFT JOIN processa todas as entradas do lado esquerdo, bem como as linhas emparelhadas da tabela da direita, enquanto RIGHT JOIN fornece todas as linhas do lado direito, bem como as linhas incompatíveis do painel esquerdo.

Mesmo que não haja correspondência no lado direito da tabela, o processo SQL LEFT recebe todas as entradas da tabela esquerda. Isso implica que, quando a cláusula ON contém 0 (zero) entradas no lado direito da tabela, a junção ainda retornará um registro com NULL em cada campo da tabela principal. Isso implica que uma junção à esquerda entrega todos os dados primeiro da tabela à esquerda, bem como quaisquer valores correspondentes da tabela à direita, ou NULL se nenhum predicado de junção adequado existir.

A junção direita, por outro lado, descobre que mesmo na tabela esquerda, o SQL RIGHT recebe e envia todas as entradas da tabela direita. Isso implica que, mesmo que a cláusula ON contenha 0 (zero) entradas no banco de dados esquerdo, a junção ainda produziria uma linha com um valor NULL em cada campo da tabela esquerda, assim como a junção esquerda, mas vice-versa.

Isso implica que uma junção certa entrega todos os dados da tabela certa, bem como quaisquer valores aceitos das tabelas, ou NULL se nenhum predicado de junção adequado existir para esta operação.

Tabela de comparação entre a junção esquerda e direita

Parâmetros de comparação

Associação à esquerda

Junção certa

Uso

Ele conecta várias tabelas e fornece todos os registros da tabela da esquerda, bem como linhas correspondentes da direita. Ele une várias tabelas e fornece todos os dados da tabela da direita, bem como linhas correspondentes primeiro da tabela da esquerda.
Execução de Consulta

Durante a implementação da consulta, incluindo a junção à esquerda, todas as entradas das tabelas são recebidas primeiro e, em seguida, os dados correspondentes dos valores da coluna da tabela à direita são obtidos usando loops empilhados, e o valor NULL é substituído por outros dados não correspondentes. Durante a implementação da consulta, incluindo a junção à direita, todos os dados da tabela certa são obtidos primeiro e, depois, os registros correspondentes dos valores da coluna esquerda da tabela são coletados usando loops empilhados.
Conjunto de resultados

O valor do conjunto de resultados será NULL ou zero se nenhum dado correspondente for encontrado na tabela certa. O valor do conjunto de resultados será NULL ou zero se nenhum dado correspondente for encontrado na tabela à esquerda.
Termo Sinônimo

LEFT OUTER JOIN DIREITO OUTER JOIN
Sintaxe

SELECT column_name (s) FROM table1LEFT JOIN table2ON table1.column_name = table2.column_name; SELECT column_name (s) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;

O que é Left Join?

Para mesclar dados de dois bancos de dados, dependendo de uma coluna que contém valores correspondentes, usamos JOIN no SQL. Por exemplo, se você tiver uma tabela contendo dados do cliente (ID do cliente, primeiro sobrenome, identificador, etc.) e, em seguida, outra tabela contendo dados do pedido para um determinado momento (ID da transação, hora, ID do cliente, ID do produto, etc.), você pode vincular os dois conjuntos de dados usando as colunas que incluem os números de ID do cliente. Isso fornecerá a você informações sobre o pedido e o cliente de cada cliente, e a cláusula Left join desempenha um papel essencial nessa operação.

Vejamos a sintaxe da junção à esquerda para entender sua utilidade adequadamente:

SELECT column_name (s)

FROM table1

LEFT JOIN mesa 2

ON table1.column_name = table2.column_name

Para começar, os bancos de dados examinam cada entrada na tabela da esquerda e procuram uma correspondência na tabela da direita, dependendo das colunas vinculadas. Se uma correspondência for encontrada, os dados da tabela à direita são adicionados à linha correspondente da tabela à esquerda. Se houver várias descobertas correspondentes, a coluna da tabela à esquerda será duplicada para incluir todos os dados diretamente da tabela à direita. Se nenhuma correspondência for encontrada, ele preserva a linha da tabela à esquerda e então insere NULL nas colunas relevantes da tabela à direita.

O que é o Right Join?

Para ser franco, a operação de junção à direita é muito semelhante à junção à esquerda, apenas o oposto. Para melhor compreensão, passaremos pela análise de sintaxe e o uso geral da junção à direita, bem como o link para a tabela à esquerda, é importante neste caso.

A junção à direita do SQL fornece todas as informações das linhas da tabela certa. Também contém os valores confirmados a partir da tabela à esquerda; no entanto, se nenhuma correspondência for encontrada em ambos os bancos de dados, ele entregará o valor NULL. As junções à direita são essencialmente muito semelhantes às junções à esquerda, pois recuperam todas as linhas da tabela especificada na frase RIGHT JOIN, mas apenas as linhas correspondentes da tabela especificada na cláusula FROM.

O RIGHT JOIN raramente é usado, pois o conteúdo de um RIGHT JOIN pode ser obtido simplesmente trocando os rótulos das duas tabelas conectadas em um LEFT JOIN.

A tradição de sempre usar LEFT JOIN surge mais provavelmente para tornar as consultas mais fáceis de entender e verificar, embora não haja uma razão convincente para evitar o uso de RIGHT JOIN. É importante mencionar que LEFT JOIN e RIGHT JOIN também podem ser expressos como LEFT OUTER JOIN, bem como RIGHT OUTER JOIN.

A sintaxe para Right Join é descrita mais abaixo. As operações das junções direita e esquerda são idênticas, mas na ordem inversa:

SELECT column_name (s) FROM table1RIGHT JOIN table2ON table1.column_name = table2.column_name

Principais diferenças entre a junção à esquerda e a junção à direita

Conclusão

Ao interagir com essas diferentes junções, é vital saber que em uma junção externa esquerda, todas as colunas da esquerda da tabela são visíveis no banco de dados. Os resultados aparecem independentemente de as colunas correspondentes estarem disponíveis na tabela correta. Não faz diferença se você usa a junção externa esquerda ou direita porque as consequências são as mesmas. As informações do processo por uma junção externa direita são as mesmas fornecidas por uma junção externa esquerda.

Referências

Diferença entre junção esquerda e direita (com tabela)