Introdução
SQL Joins pode ser um conceito complicado para iniciantes dominarem. Se você não estudou programação antes, você pode ter dificuldade em entender quais combinações estão em SQL e os diferentes tipos de sindicatos.
Mas como aspirante ou profissional de ciência de dados, você deve ter um conhecimento sólido do que são as junções SQL e como elas funcionam. Créame, você o usará muito se a indústria de ciência de dados rapidamente recuperar e manipular os dados presentes em diferentes tabelas.
Neste artigo, vou mostrar que as junções sql são realmente fáceis de aprender. Primeiro entenderemos o que são junções SQL e, em seguida, examinaremos os quatro tipos diferentes de junções que você precisará dominar..
Você quer aprender o básico do que é SQL e como pode ser aplicado na ciência de dados? Olhe para o curso popular SQL para ciência de dados.
O que são junções SQL?
Vamos primeiro responder à pergunta de um milhão de dólares antes de examinar os diferentes tipos de junções no SQL.
Vou dar um exemplo intuitivo para explicar o que são junções SQL. Considere essas duas coleções:
Digamos que o círculo azul represente o conjunto de todos os filhos (CRIANÇAS) e o cinza representa o conjunto de pessoas que adoram ver Messi jogar (MESSI). Como eu agiria se quiséssemos o conjunto de todos os meninos que adoram ver o Messi jogar??
Existe uma maneira muito processual de abordar este problema:
- Primeiro, selecione todos os diferentes identificadores da tabela de Messi que representam a consulta interna abaixo
- Pegue cada ID do gráfico de meninos e compare-o com este conjunto.
- Se o id corresponde a algum deles, em seguida, gere essa linha da tabela de meninos
Isso é bastante semelhante ao conceito de um 'for loop’ e é chamado de sub-seleção no SQL.
SELECIONE * A PARTIR DE RAPAZES ONDE Eu iria É NO (SELECIONE DISTINTO Eu iria A PARTIR DE MESSI);
Mas em SQL, existe outra maneira de abordar este problema.
Para começar a entender as combinações, devemos primeiro ter uma perspectiva diferente sobre o que realmente queremos. Na terminologia estabelecida: nós queremos o interseção por BOYS e MESSI. Em termos gráficos, isso é expresso como:
Estamos interessados na parte celestial, verdade? Esta parte, o la interior papel (acompanhar), Eles são todos os meninos que adoram ver Messi. Tudo o que temos que fazer agora é expressar isso em SQL:
SELECIONE * A PARTIR DE RAPAZES INTERNO JUNTE MESSI SOBRE BOYS.id = MESSI.id;
Olha o que (interior) junte-se atrás? Não poderia ser mais fácil! Esta é a abordagem intuitiva de como entender as combinações.
Observação: Os diagramas de Venn não são aplicados diretamente ao SQL porque os elementos nas coleções (Tabelas) eles não são idênticos. Mas porque eles se referem um ao outro, podemos usar diagramas de Venn para entender melhor o conceito.
Diferentes tipos de junções em SQL
Agora. Vamos estender isso para o quadro geral e aprender sobre os diferentes tipos de junções SQL. Considere as seguintes tabelas de amostra:
1. INNER JOIN em SQL
Isso é o que cobrimos na seção anterior. Inner Join retorna registros que possuem valores correspondentes em ambas as tabelas:
Vamos ver qual é a saída usando o exemplo acima:
SELECIONE * A PARTIR DE RAPAZES INTERNO JUNTE MESSI SOBRE BOYS.id = MESSI.id;
PRODUÇÃO:
Como eu mencionei antes, junção interna fornece a interseção de duas tabelas, quer dizer, linhas que são comuns em ambas as tabelas.
2. JUNTA DIREITA (externo) e SQL
Suponha que queremos a identificação e o nome de todas as pessoas que adoram ver Messi jogar. Obviamente, existem muitas maneiras de escrever esta consulta, mas vamos entender isso com a ajuda dos sindicatos.
Vamos ver qual é o resultado:
SELECIONE * A PARTIR DE RAPAZES DIREITO JUNTE MESSI SOBRE BOYS.id = MESSI.id;
PRODUÇÃO:
Você pode descobrir o que aconteceu aqui? A junção externa direita nos dá as linhas que são comuns em ambas as tabelas, bem como linhas adicionais da tabela de Messi que não estão presentes na interseção. Em outras palavras, uma junção à direita retorna todos os registros da tabela da direita e registros correspondentes da tabela da esquerda.
3. DEIXOU (Exterior) JOIN em SQL
Digamos que queremos a lista de todos os caras que amam assistir Messi jogar e não gostam de ver Messi jogar usando joins..
Eu quero que você adivinhe o resultado final antes de ler.
SELECIONE * A PARTIR DE RAPAZES DEIXOU JUNTE MESSI SOBRE BOYS.id = MESSI.id;
PRODUÇÃO:
A junção externa esquerda nos dá as linhas que são comuns em ambas as tabelas, bem como linhas adicionais da tabela Boys que não estão presentes na interseção. Em outras palavras, uma junção à esquerda retorna todos os registros da tabela à esquerda e os registros correspondentes da tabela à direita.
4. União completa (EXTERIOR) e SQL
Por último, digamos que queremos a lista de todas as pessoas, incluindo crianças que adoram assistir Messi brincar.
Tenho certeza que você já sabe a resposta agora!!
SELECIONE * A PARTIR DE RAPAZES EXTERIOR COMPLETO JUNTE MESSI SOBRE BOYS.id = MESSI.id;
PRODUÇÃO:
Perfeito! Uma junção externa completa nos dá as linhas que são comuns em ambas as tabelas, bem como linhas adicionais de ambas as tabelas que não estão presentes na interseção. Obtemos todos os registros quando há uma correspondência na tabela da esquerda ou da direita.
Notas finais
Quer aprender como o SQL pode ser usado na ciência de dados? Eu recomendo dar uma olhada neste curso incrível: Linguagem de consulta estruturada (SQL) para ciência de dados.
Se você tiver alguma pergunta ou comentário sobre este artigo, deixe-me saber na seção de comentários abaixo e terei prazer em entrar em contato com você.