Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

LINGUAGEM DE PROGRAMAÇÃO 
DE BANCO DE DADOS 
JUNÇÃO DE TABELAS 
OUTER JOIN 
 
Prof Luiz Antonio Gobitta 
ESTRUTURA DO BANCO DE DADOS 
ESTRUTURA DO BANCO DE DADOS 
O banco de Dados é composto pelas tabelas: 
• FUNCIONÁRIOS – HR.EMPLOYEES 
• DEPARTAMENTOS – HR.DEPARTMENTS 
• LOCAIS – HR.LOCATIONS 
• PAISES – HR.COUNTRIES 
• REGIÕES – HR.REGIONS 
• CARGOS – HR.JOBS 
 
Junção Externa - OUTER JOIN 
• Uma junção interna [Inner Join]mostra as 
linhas de uma tabela que tem correspondente 
na outra tabela. Linhas sem correspondente 
na outra tabela são omitidas. 
 
• Uma junção externa [outer join] mostra todas 
as linhas de uma tabela, mesmo quando elas 
não satisfazem a condição de junção. 
Tipos de OUTER JOIN 
Existem 3 tipos de outer join: 
• LEFT OUTER JOIN 
• RIGHT OUTER JOIN 
• FULL OUTER JOIN 
• LEFT OUTER JOIN→ indica que todas as linhas da 
tabela à esquerda do JOIN são incluídas no resultado 
e a tabela à direita, apenas as linhas relacionadas. 
• RIGHT OUTER JOIN→ indica que todas as linhas da 
tabela à direita do JOIN são incluídas no resultado e 
a tabela à esquerda, apenas as linhas relacionadas. 
• FULL OUTER JOIN→ todas as linhas de ambas as 
tabelas são incluídas, mesmo as que não estão 
relacionadas com a outra tabela. 
• Quando uma linha não tem correspondente na outra 
tabela, será mostrado NULL nas colunas da outra 
tabela. 
Exemplos 
Precisamos juntar as informações da tabela 
Funcionários com as informações da tabela 
departamentos: 
 
SELECT last_name, salary, 
department_name 
FROM hr.employees F 
LEFT OUTER JOIN hr.departments D 
ON F.department_id = D.department_id 
 
• Serão listados todos os funcionários, inclusive 
aqueles que não estão alocados a um 
departamento. 
SELECT last_name, salary, 
department_name 
FROM hr.employees F 
RIGHT OUTER JOIN 
hr.departments D 
ON F.department_id = 
D.department_id 
 
• Serão listados todos os departamentos, 
inclusive aqueles que não tem nenhum 
funcionário alocados a ele. 
 
SELECT last_name, salary, 
department_name 
FROM hr.employees F 
FULL OUTER JOIN hr.departments D 
ON F.department_id = 
D.department_id 
 
• Serão listados todos os funcionários e todos os 
departamentos, inclusive aqueles que não tem 
correspondência na outra tabela. 
Exemplos 
Crie uma query que mostre os sobrenomes 
dos funcionários, os cargos e as respectivas 
descrições de cargo. Liste todos os 
funcionários, mesmo os que não tem cargo. 
select F.last_name, F.job_id, 
C.job_title 
from hr.employees F 
LEFT OUTER JOIN hr.jobs C 
ON F.job_id = C.job_id 
 
Crie uma consulta para o RH com os nomes dos 
países, as cidades, e os endereços dos locais. 
Liste em ordem crescente de país e devem ser 
listados todos os países, mesmo aqueles que 
não tem filiais da empresa. 
select P.country_name, L.city, 
L.street_address 
from hr.locations L 
RIGHT OUTER JOIN hr.countries P 
ON L.country_id = P.country_id 
Order by P.country_name 
 
Crie uma query que mostre os sobrenomes dos 
funcionários e as descrições de cargo. Liste todos 
os funcionários, mesmo os que não tem cargo e 
todos os cargos, mesmo sem funcionários 
alocados, em ordem alfabética de cargo e sobre 
nome. 
select C.job_title, F.last_name 
from hr.employees F 
FULL OUTER JOIN hr.jobs C 
ON F.job_id = C.job_id 
Order by C.job_title, F.last_name 
O RH precisa de um relatório sobre os 
funcionários e os seus respectivos departamentos. 
Crie uma consulta que exiba o sobrenome, o 
salário e o nome do departamento somente para 
os funcionários com salário entre 2000 e 5000. 
Devem aparecer todos os funcionários. 
 
select F.last_name, F.salary, 
D.department_name 
from hr.employees F 
LEFT JOIN hr.departments D 
ON F.department_id = D.department_id 
where salary between 2000 and 5000

Mais conteúdos dessa disciplina