Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Por padrão, as Ferramentas de Designer de Consulta e Exibição (Visual Database Tools) criam uma junção interna entre tabelas. As junções internas eliminam as linhas que não correspondem a uma linha da outra tabela. No entanto, as junções externas retornam todas as linhas de pelo menos uma das tabelas ou exibições mencionadas na FROM cláusula, desde que essas linhas atendam a qualquer WHERE condição ou HAVING pesquisa. Se você quiser incluir linhas de dados no conjunto de resultados que não têm uma correspondência na tabela unida, você pode criar uma junção externa.
Quando você cria uma junção externa, a ordem na qual as tabelas aparecem na instrução SQL (conforme refletido no painel SQL) é significativa. A primeira tabela que você adiciona se torna a tabela "esquerda" e a segunda se torna a tabela "direita". (A ordem real na qual as tabelas aparecem no painel Diagrama (Visual Database Tools) não é significativa.) Ao especificar uma junção externa esquerda ou direita, você está se referindo à ordem na qual as tabelas foram adicionadas à consulta e à ordem na qual elas aparecem na instrução SQL no Painel sql (Visual Database Tools).
Criar uma junção externa
Crie a junção, automaticamente ou manualmente. Para obter detalhes, consulte Unir tabelas automaticamente (Visual Database Tools) ou Unir tabelas manualmente (Visual Database Tools).
Selecione a linha de junção no painel Diagrama e, no menu Designer de Consulta, escolha Selecionar Todas as Linhas de <tablename>, selecionando o comando que inclui a tabela cujas linhas extras você deseja incluir.
- Escolha a primeira tabela para criar uma junção externa esquerda.
- Escolha a segunda tabela para criar uma junção externa direita.
- Escolha ambas as tabelas para criar uma junção externa completa.
Quando você especifica uma junção externa, o Designer de Consulta e Exibição modifica a linha de junção para indicar uma junção externa.
Além disso, o Designer de Consulta e Exibição modifica a instrução SQL no painel SQL para refletir a alteração no tipo de junção, conforme mostrado na seguinte instrução:
SELECT employee.job_id,
employee.emp_id,
employee.fname,
employee.minit,
jobs.job_desc
FROM employee
LEFT OUTER JOIN jobs
ON employee.job_id = jobs.job_id;
Como uma junção externa inclui linhas sem correspondência, você pode usá-la para encontrar linhas que violam restrições de chave estrangeira. Para fazer isso, crie uma junção externa e adicione uma condição de pesquisa para localizar linhas nas quais a coluna de chave primária da tabela mais à direita é nula. Por exemplo, a junção externa a seguir localiza linhas na employee tabela que não têm linhas correspondentes na jobs tabela:
SELECT employee.emp_id,
employee.job_id
FROM employee
LEFT OUTER JOIN jobs
ON employee.job_id = jobs.job_id
WHERE (jobs.job_id IS NULL);