-
Entendendo LEFT, RIGHT e INNER
Quando dizemos que a tabela será Left ou Right, estamos informando ao comando SQL que ele deve obedecer o sentido para a Direita ou para a Esquerda, ou seja, ao utilizarmos Left Join o banco de dados irá analisar a estrutura da tabela da Direita e comparar com a tabela da Esquerda (leia-se Direita para a Esquerda), veja o desenho.
Fonte:
http://www.prosige.com.br/portal/index.php?option=com_content&view=article&id=58:diferenca-entre-left-right-e-inner-join&catid=1:bancodedados&Itemid=55
-
Uma forma que encontrei de não confundir mais foi traduzindo literalmente (fica feio):
LEFT JOIN -> (ESQUEDA JUNTA COM)
RIGHT JOIN -> (DIREITA JUNTA COM)
-
Para seguir a risca o enunciado não podemos fazer um RIGHT JOIN, pois o enunciado solicita que sejam apresentados "todos" os registros da tabela 1. Se fizermos como sugerido na resposta:
tabela1 LEFT JOIN tabela2 RIGHT JOIN tabela 3
Ao fazer o RIGHT JOIN poderíamos perder registros da tabela 1. Acredito que a resposta correta seria:
(tabela 1 LEFT JOIN tabela 2) FULL OUTER JOIN tabela 3
Se estiver utilizando o MySQL, não existe FULL OUTER JOIN, então teríamos que fazer algo assim:
((tabela 1 LEFT JOIN tabela 2) LEFT JOIN tabela3) UNION ((tabela 1 LEFT JOIN tabela 2) RIGHT JOIN tabela3)
-
Complementando os comentários, para entender os Joins do SQL:
https://www.w3schools.com/sql/sql_join.asp