Como usar o nome da coluna Participe e associação interior no SQL

SQL oferece vários tipos diferentes de junta, incluindo o nome da coluna juntar-se e junte interior, para ajudá-lo a realizar sua tarefa específica. Aqui estão alguns exemplos para ajudar a guiá-lo em sua jornada SQL.

Nome da coluna participar

o column-name Junte-se é como entrar em um natural, mas é mais flexível. Em participar de um natural, todas as colunas da tabela de origem que têm o mesmo nome são comparados uns com os outros para a igualdade. Com o nome da coluna participar, você selecionar quais colunas de mesmo nome para comparar. Você pode escolhê-los todos se desejar, fazendo com que o nome da coluna join (efetivamente) participar de um natural.

Ou você pode escolher menos de todas as colunas de mesmo nome. Desta forma, você tem um grande grau de controle sobre quais linhas entre produtos qualificar-se para ser colocado em sua tabela de resultados.

Suponha que você é um fabricante de set-xadrez e tem uma tabela de inventário que mantém o controle de seu estoque de peças brancas e outro que mantém o controle de peças pretas. As tabelas contêm dados como se segue:

BRANCO PRETO ----- ----- Parte Quant madeira Pedaço de madeira Quant ----- ----- ---- ----- ----- ---- rei 502 Carvalho rei 502 EbonyQueen 398 Oak Rainha 397 EbonyRook 1020 Oak Rook 1020 EbonyBishop 985 Oak Bishop 985 EbonyKnight 950 Oak Cavaleiro 950 EbonyPawn 431 Oak Pawn 453 Ebony

Para cada tipo de peça, o número de peças brancas deve corresponder ao número de peças pretas. Se eles não corresponderem, algumas peças de xadrez estão a ser perdido ou roubado, e você precisa apertar as medidas de segurança.

A junção natural compara todas as colunas com o mesmo nome para a igualdade. Neste caso, uma tabela de resultados com nenhuma linha é produzida, porque não há linhas no MADEIRA coluna na tabela BRANCO encontrou nenhum linhas na MADEIRA coluna na tabela PRETO.

Esta tabela de resultados não ajuda a determinar se qualquer mercadoria está em falta. Em vez disso, fazer uma coluna de nome de juntar-se que exclui a MADEIRA coluna de consideração. Ele pode ter a seguinte forma:

SELECT * DE BRANCO Cadastre BLACKUSING (Piece, Quant) -

A tabela de resultados mostra apenas as linhas para as quais o número de peças brancas em stock igual ao número de peças pretas:

Peça Quant Madeira peça Quant Madeira ----- ----- ---- ----- ----- ---- rei 502 Carvalho rei 502 EbonyRook 1020 Oak Rook 1020 EbonyBishop 985 Oak Bishop 985 EbonyKnight 950 Oak Cavaleiro 950 Ebony

A pessoa perspicaz pode-se deduzir que a rainha e penhor estão ausentes da lista, indicando uma falta em algum lugar para esses tipos de peças.

Junção interna

Até agora, você está começando provavelmente a ideia de que se junta são muito esotérico e que é preciso um nível incomum de discernimento espiritual para lidar com eles de forma adequada. Você pode ter ouvido falar do misterioso junção interna e especulou que provavelmente representa o núcleo ou a essência das operações relacionais.

Bem, ha! A piada é você: Não há nada de misterioso junta interior. O nome da coluna juntar poderia ter sido formulado no último exemplo, como uma junção interna usando a seguinte sintaxe:

SELECT * DE BRANCO INNER JOIN BLACKUSING (Piece, Quant) -

O resultado é o mesmo.

A junção interna é assim chamado para distingui-lo a partir da junção externa. Uma junção interna desfaz todas as linhas da tabela de resultados que não têm linhas correspondentes em ambas as tabelas de origem. Uma associação externa preserva as linhas sem correspondência. Essa é a diferença. Nada metafísico sobre ele.

menu