Como interligar tabelas utilizando SQL

Um pouco sobre os principais tipos de joins.

Por Fernando Belém

Atualizado em:


Como interligar tabelas utilizando SQL - Um pouco sobre os principais tipos de joins.

Quando se inicia o estudo de banco de dados, uma dúvida muito comum é como realizar a interligação entre as tabelas, sendo que essa deve ser realizada através dos joins. É comum para quem está iniciando, ficar em dúvida em qual tipo de join deve ser utilizado na construção da query. Pensando nisso, irei apresentar abaixo um pequeno esquema baseado na teoria dos conjuntos que irá facilitar a compreensão dos principais tipos de joins, sendo eles: INNER JOIN, LEFT JOIN e RIGHT JOIN.

Para esse exemplo, vamos considerar que estamos trabalhando com duas tabelas, chamadas respectivamente de tabela_a e tabela_b e que a chave primária de cada tabela é a coluna id e que o relacionamento entre essas tabelas é um para muitos, isso é, um elemento da tabela_a pode estar associado a vários elementos da tabela_b, assim, a tabela_b apresenta uma chave estrangeira chamada tabela_a_id.

DER

Diagrama Entidade-Relacionamento.

  • INNER JOIN

    Utilizamos o INNER JOIN quando queremos buscar a interseção entre os elementos da tabela_a e tabela_b, isso é, somente serão listados os elementos que encontram-se associados em ambas as tabelas.

    INNER JOIN

    Somente a interseção será listada.

    select 
    	*
    from
    	tabela_a inner join tabela_b
    		on (tabela_a.id = tabela_b.tabela_a_id);
  • LEFT JOIN

    Utilizamos o LEFT JOIN quando queremos listar todos os elementos da tabela_a independente se está ou não associado à elementos da tabela_b.

    LEFT JOIN

    Todos os elementos da tabela_a serão listados.

    select 
    	*
    from
    	tabela_a left join tabela_b
    		on (tabela_a.id = tabela_b.tabela_a_id);
  • RIGHT JOIN

    Utilizamos o RIGHT JOIN quando queremos listar todos os elementos da tabela_b independente se está ou não associado à elementos da tabela_a.

    RIGHT JOIN

    Todos os elementos da tabela_b serão listados.

    select 
    	*
    from
    	tabela_a right join tabela_b
    		on (tabela_a.id = tabela_b.tabela_a_id);

Esse são três exemplos de joins que são frequentemente utilizados quando escrevemos alguma query. Espero que esse artigo tenha lhe auxiliado e qualquer dúvida ou sugestão entre em contato comigo nas redes sociais ou no menu "Contato" do site.

Grande abraço!!!

Esse site utiliza serviços de análise de visitação para medir o seu desempenho e engajamento. Você aceita que essas informações sejam coletadas?