Instrução SQL INNER JOIN: exemplos, sintaxe e recursos

O desenvolvimento de qualquer banco de dados não implicaapenas a criação e preenchimento de tabelas com uma variedade de informações, mas também trabalhar com os dados. Para a execução correta de várias tarefas para selecionar dados de tabelas e gerar relatórios, a construção de Seleção padrão é usada.

Exemplo de junção interna sql

Obtém dados de tabelas

Se considerarmos o problema de selecionar dados oua construção de um determinado relatório, você pode determinar o nível de complexidade dessa operação. Em regra, ao trabalhar com bancos de dados sérios (no volume de informações), que são formados, por exemplo, em lojas online ou grandes empresas, a amostragem de dados não será limitada a apenas uma tabela. Normalmente, as amostras podem ser de um número bastante grande de tabelas interconectadas, mas também as consultas / subconsultas aninhadas que o próprio programador, dependendo da tarefa atribuída a ela. Para a amostragem de uma tabela, você pode usar o design mais simples:

Selecione * de Pessoa

onde Pessoa é o nome da tabela da qual selecionar os dados.

Se houver necessidade de selecionar dados de várias tabelas, você pode usar um dos projetos padrão para combinar várias tabelas.

Formas de conectar tabelas adicionais

Se considerarmos o uso de tais estruturas no nível inicial, podemos distinguir os seguintes mecanismos para conectar o número necessário de tabelas para a amostra, a saber:

  1. Operador Inner Join.
  2. Partida esquerda ou, esta é a segunda maneira de gravar, Junção externa esquerda.
  3. Cross Join.
  4. Inscrição completa.

O uso de tabelas de operadores de junção na prática pode ser aprendido considerando o uso do operador SQL - Inner Join. Um exemplo de seu uso será assim:

Selecione * de Pessoa

Inner join Subdivision em Su_Person = Pe_ID

O idioma SQL e o operador Join Inner Join podem serUse não só para mesclar duas ou mais tabelas, mas também para conectar outras subconsultas, o que facilita muito o trabalho dos administradores de banco de dados e, como regra geral, pode acelerar significativamente a execução de certas consultas estruturalmente complexas.

Combinando dados em tabelas linha por linha

Exemplos internos de junção do operador sql

Se você considerar conectar um grande número de subconsultas e reunir dados em uma única linha, linha por linha, também poderá usar os operadores Union e Union All.

A aplicação desses designs dependerá da tarefa atribuída ao desenvolvedor e do resultado que ele deseja alcançar no final.

Descrição do operador Inner Join

Na maioria dos casos, para mesclar váriostabelas no SQL usam o operador Inner Join. A descrição do Inner Join em SQL é bastante simples para um programador médio entender, o que está apenas começando a entender os bancos de dados. Se considerarmos a descrição do mecanismo de operação desta construção, obtemos a seguinte imagem. A lógica do operador como um todo é baseada na possibilidade de interseção e amostragem apenas dos dados que existem em cada uma das tabelas que entram na consulta.

Se considerarmos este trabalho do ponto de vista da interpretação gráfica, obtemos a estrutura de SQL Inner Join, um exemplo do qual pode ser mostrado com a ajuda do seguinte esquema:

exemplos de sintaxe de junção interna sql

Por exemplo, temos duas tabelas, cujo esquemaé mostrado na figura. Eles, por sua vez, têm um número diferente de registros. Em cada uma das tabelas existem campos que estão ligados entre si. Se você tentar explicar o trabalho do operador com base na figura, o resultado retornado estará na forma de um conjunto de registros de duas tabelas, onde os números dos campos relacionados coincidem. Simplificando, a consulta retornará apenas os registros (da tabela dois), dados sobre os quais estão na tabela número um.

Sintaxe do operador Inner Join

Como mencionado anteriormente, o operador Inner Join eé a sua sintaxe que é extraordinariamente simples. Para organizar links entre tabelas dentro de uma amostra, será suficiente lembrar e usar o seguinte esquema principal para construir um operador, que é escrito em uma linha do código SQL do programa, a saber:

  • Inner Join [Nome da mesa] no [campo-chave da tabela à qual nos conectamos] = [Campo-chave da tabela conectada].

Para comunicação neste operador, o principalteclas de tabela. Como regra geral, no grupo de tabelas que armazenam informações sobre funcionários, a Pessoa e a Subdivisão anteriormente descritas têm pelo menos um registro semelhante. Então, vamos dar uma olhada mais de perto na instrução SQL Inner Join, um exemplo do qual foi mostrado um pouco antes.

Exemplo e descrição da conexão com uma única seleção de tabela

Nós temos uma tabela Person onde nós armazenamosinformações sobre todos os funcionários que trabalham na empresa. Apenas observe que a chave principal desta tabela é o campo - Pe_ID. Apenas sobre isso e haverá um monte.

A segunda tabela de subdivisão irá armazenarInformações sobre as unidades em que os funcionários trabalham. Ela, por sua vez, está vinculada à ajuda do campo Su_Person com a tabela Person. O que isso diz? Com base no esquema de dados, você pode dizer que a tabela de departamento para cada entrada na tabela Empregados conterá informações sobre o departamento em que eles trabalham. É para essa conexão que o operador Inner Join funcionará.

Para um uso mais compreensível, considere a instrução SQL Inner Join (exemplos de seu uso para uma e duas tabelas). Se considerarmos um exemplo para uma única tabela, tudo é bastante simples:

Selecione * de Pessoa

Inner join Subdivision em Su_Person = Pe_ID

Um exemplo de conectar duas tabelas e uma subconsulta

sql e junte-se ao operador de junção interna

Operador SQL Inner Join, exemplos de usoque para a seleção de dados de várias tabelas pode ser organizado como acima, funciona em um princípio um pouco mais complicado. Para duas tabelas, complicamos o problema. Por exemplo, temos a tabela Depart, que armazena informações sobre todos os departamentos em cada departamento. Nesta tabela, o número do departamento e o número do funcionário são registrados e a amostra de dados deve ser complementada com o nome de cada departamento. Olhando para o futuro, vale a pena dizer que dois métodos podem ser usados ​​para resolver este problema.

A primeira maneira é conectar a tabela de departamento à amostra. Nesse caso, você pode organizar a solicitação desta maneira:

Selecione Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name da Pessoa

Inner join Subdivision em Su_Person = Pe_ID

Junção interna Partida em Su_Depart = Dep_ID e Pe_Depart = Dep_ID

O segundo método de resolver o problema é usarsubconsulta, na qual nem todos os dados, mas apenas os dados necessários, serão selecionados na tabela de departamentos. Isso, em contraste com o primeiro método, reduzirá o tempo de consulta.

Selecione Pe_ID, Pe_Name, Su_Id, Su_Name, Dep_ID, Dep_Name da Pessoa

Inner join Subdivision em Su_Person = Pe_ID

Junção interna (Selecione Dep_ID, Dep_Name, Pe_Depart de Depart) como T em Su_Depart = Dep_ID e Pe_Depart = Dep_ID

Deve-se notar que este projeto nem sempre épode acelerar a consulta. Às vezes, há casos em que é necessário usar uma amostragem adicional de dados na tabela temporária (se o volume for muito grande) e, em seguida, ela é combinada com a amostra principal.

Um exemplo de uso do operador Inner Join para seleções de um grande número de tabelas

Construir consultas complexas implicause para selecionar dados um número significativo de tabelas e subconsultas relacionadas entre si. Esses requisitos podem satisfazer a sintaxe SQL Inner Join. Exemplos do uso do operador nesse caso podem ser complicados não apenas por amostras de muitos locais de armazenamento de dados, mas também por um grande número de subconsultas aninhadas. Para um exemplo específico, você pode obter uma amostra de dados das tabelas do sistema (o operador Inner Join SQL). Um exemplo - 3 tabelas - neste caso, terá uma estrutura bastante complexa.

inner join sql example 3 tabelas

Neste caso, mais três são adicionados (à tabela principal) e várias condições de seleção de dados são inseridas.

Ao usar o operador, a junção interna éLembre-se que quanto mais complexa a consulta, mais tempo vai ser implementado, por isso você deve procurar maneiras de realizar mais rapidamente e resolver o problema.

inner join sql example 3 tabelas

Conclusão

No final, gostaria de dizer uma coisa: Trabalhar com bancos de dados não é a coisa mais difícil que está na programação, então se você quiser, absolutamente todos podem dominar o conhecimento de construir bancos de dados e, eventualmente, ganhar experiência, você será capaz de trabalhar com eles em um nível profissional.

</ p>
Gostei:
0
Artigos relacionados
Sintaxe: como essa seção se parece.
Infinito para loop (Java)
Como compor consultas SQL - detalhadas
Coalesce sql: descrição, características
MySQL JOIN: descrição, exemplo de uso
Conversão de tipos. Funções redondas e Trunc
TENDO SQL: descrição, sintaxe, exemplos
Operador da estação de gasolina: oportunidades de carreira
Operador de Computador
Posts Populares
para cima