Logo Passei Direto
Buscar

Exercício 06 - Consulta com várias tabelas no POSTGRESQL

Ferramentas de estudo

Questões resolvidas

Sejam duas tabelas assim estruturadas:
DEPARTAMENTO - CODIGOD, NOME
EMPREGADO - CODIGOE, NOME, ENDERECO, CODIGOD (CODIGOD REFERENCIA DEPARTAMENTO)
Seja a consulta a seguir:
SELECT D.NOME, E.NOME
FROM DEPARTAMENTO D LEFT JOIN EMPREGADO E ON D.CODIGOD = E.CODIGOD
ORDER BY D.NOME;
A consulta retorna:

A) O nome do departamento e o nome do empregado alocado. Os departamentos sem funcionário aparecem no resultado.
B) O nome do departamento e o nome do empregado alocado. Os departamentos sem funcionário alocado não aparecem no resultado.
C) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento aparecem no resultado.
D) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento não aparecem no resultado.
E) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento e os departamentos sem empregado aparecem nos resultados.

Para obter todas as linhas da tabela B, o comando SELECT deverá utilizar na sequência um JOIN entre as tabelas A e B do tipo:

A) CROSS JOIN.
B) INNER JOIN.
C) FULL OUTER JOIN.
D) RIGHT OUTER JOIN.
E) LEFT OUTER JOIN.

Qual é o resultado de uma junção à esquerda �LEFT JOIN�?

A
B
C
D
E
Retorna todas as linhas da tabela à esquerda e as linhas correspondentes da tabela à direita, preenchendo com valores nulos quando não há correspondência.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

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

Questões resolvidas

Sejam duas tabelas assim estruturadas:
DEPARTAMENTO - CODIGOD, NOME
EMPREGADO - CODIGOE, NOME, ENDERECO, CODIGOD (CODIGOD REFERENCIA DEPARTAMENTO)
Seja a consulta a seguir:
SELECT D.NOME, E.NOME
FROM DEPARTAMENTO D LEFT JOIN EMPREGADO E ON D.CODIGOD = E.CODIGOD
ORDER BY D.NOME;
A consulta retorna:

A) O nome do departamento e o nome do empregado alocado. Os departamentos sem funcionário aparecem no resultado.
B) O nome do departamento e o nome do empregado alocado. Os departamentos sem funcionário alocado não aparecem no resultado.
C) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento aparecem no resultado.
D) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento não aparecem no resultado.
E) O nome do departamento e o nome do empregado alocado. Os empregados sem departamento e os departamentos sem empregado aparecem nos resultados.

Para obter todas as linhas da tabela B, o comando SELECT deverá utilizar na sequência um JOIN entre as tabelas A e B do tipo:

A) CROSS JOIN.
B) INNER JOIN.
C) FULL OUTER JOIN.
D) RIGHT OUTER JOIN.
E) LEFT OUTER JOIN.

Qual é o resultado de uma junção à esquerda �LEFT JOIN�?

A
B
C
D
E
Retorna todas as linhas da tabela à esquerda e as linhas correspondentes da tabela à direita, preenchendo com valores nulos quando não há correspondência.

Prévia do material em texto

Você acertou 2 de 8 questões
Verifique o seu desempenho e continue treinando! Você pode refazer o exercício quantas
vezes quiser.
Verificar Desempenho
1 Marcar para revisão
As operações de subconsultas são uma ferramenta poderosa para manipular e
recuperar dados de maneira flexível e específica. Elas desempenham um papel
essencial na realização de consultas complexas em bancos de dados relacionais,
permitindo a obtenção de informações detalhadas de várias fontes de dados.
Qual é o objetivo principal de uma consulta que utiliza subconsultas?
Questão 1 de 8
Corretas �2�
Incorretas �6�
Em branco �0�
1 2 3 4 5
6 7 8
Exercicio Consulta Com Várias Tabelas No Postgresql Sair
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 1/14
A
B
C
D
E
Exibir todos os registros de uma única tabela.
Realizar operações de junção entre tabelas.
Apresentar o resultado de diversas consultas.
Realizar uma pesquisa usando resultados de outras consultas.
Atualizar os dados em mais de uma tabela ao mesmo tempo.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
Operações de subconsultas (também conhecidas como subqueries) em bancos de
dados são usadas para realizar consultas aninhadas, onde uma consulta é
incorporada dentro de outra consulta. As subconsultas desempenham um papel
importante na recuperação e manipulação de dados em bancos de dados
relacionais. Elas podem ser usadas em várias cláusulas SQL, como SELECT,
WHERE, FROM, HAVING e mais, dependendo dos requisitos da consulta.
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 2/14
A
B
C
2 Marcar para revisão
Sejam duas tabelas assim estruturadas:
DEPARTAMENTO�CODIGOD, NOME�
EMPREGADO�CODIGOE, NOME, ENDERECO, CODIGOD�
CODIGOD REFERENCIA DEPARTAMENTO
Seja a consulta a seguir:
SELECT D.NOME, E.NOME
FROM DEPARTAMENTO D LEFT JOIN EMPREGADO E ON �D.CODIGOD�E.CODIGOD�
ORDER BY D.NOME;
A consulta retorna:
O nome do departamento e o nome do empregado alocado. Os departamentos
sem funcionário aparecem no resultado.
O nome do departamento e o nome do empregado alocado. Os departamentos
sem funcionário alocado não aparecem no resultado.
O nome do departamento e o nome do empregado alocado. Os empregados sem
departamento aparecem no resultado.
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 3/14
D
E
O nome do departamento e o nome do empregado alocado. Os empregados sem
departamento não aparecem no resultado.
O nome do departamento e o nome do empregado alocado. Os empregados sem
departamento e os departamentos sem empregado aparecem nos resultados.
Resposta incorreta
Opa! A alternativa correta é a letra A. Confira o gabarito comentado!
Gabarito Comentado
A consulta SQL apresentada realiza um LEFT JOIN entre as tabelas DEPARTAMENTO e
EMPREGADO, baseando-se na coluna CODIGOD. O LEFT JOIN retorna todos os
registros da tabela à esquerda �DEPARTAMENTO�, mesmo que não haja
correspondência na tabela à direita �EMPREGADO�. Portanto, a consulta retorna o
nome do departamento e o nome do empregado alocado, e os departamentos que não
possuem funcionários também aparecem no resultado. Isso faz da alternativa A a
resposta correta.
3 Marcar para revisão
Para obter todas as linhas da tabela B, o comando SELECT deverá utilizar na sequência um
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 4/14
A
B
C
D
E
JOIN entre as tabelas A e B do tipo:
CROSS JOIN.
INNER JOIN.
FULL OUTER JOIN.
RIGHT OUTER JOIN.
LEFT OUTER JOIN.
Resposta incorreta
Opa! A alternativa correta é a letra D. Confira o gabarito comentado!
Gabarito Comentado
O comando RIGHT OUTER JOIN é utilizado para retornar todas as linhas da tabela à
direita (neste caso, a tabela B�, mesmo que não haja correspondências na tabela à
esquerda (tabela A�. Portanto, para obter todas as linhas da tabela B,
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 5/14
A
B
independentemente de haver ou não correspondências na tabela A, o comando
SELECT deve utilizar um RIGHT OUTER JOIN.
4 Marcar para revisão
Considere que cada tabela a seguir pertence a um banco de dados distinto.
Qual consulta retorna o nome e o CPF dos cidadãos que são clientes e alunos?
SELECT NOME, CPF FROM ALUNO
UNION
SELECT NOME, CPF FROM CLIENTE;
SELECT NOME, CPF FROM CLIENTE
INTERSECT
SELECT NOME, CPF FROM ALUNO;
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 6/14
C
D
E
SELECT NOME, CPF FROM ALUNO
EXCEPT
SELECT NOME, CPF FROM CLIENTE;
SELECT NOME, CPF FROM CLIENTE
JOIN
SELECT NOME, CPF FROM ALUNO;
SELECT NOME, CPF FROM CLIENTE
MINUS
SELECT NOME, CPF FROM ALUNO;
Resposta incorreta
Opa! A alternativa correta é a letra A. Confira o gabarito comentado!
Gabarito Comentado
A resposta correta é:
SELECT NOME, CPF FROM ALUNO
UNION
SELECT NOME, CPF FROM CLIENTE;
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 7/14
A
B
5 Marcar para revisão
Considere a tabela a seguir:
Seja a consulta:
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F' OR SALARIO�5000;
Qual alternativa a seguir representa um código equivalente ao da consulta acima?
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F' AND SALARIO�5000;
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F';
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 8/14
C
D
E
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SALARIO�5000;
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F'
UNION
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SALARIO�5000;
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F'
EXCEPT
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SALARIO�5000;
Resposta incorreta
Opa! A alternativa correta é a letra D. Confira o gabarito comentado!
Gabarito Comentado
A resposta correta é:
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 9/14
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SEXO� 'F'
UNION
SELECT NOME, CPF, SEXO
FROM   EMPREGADO
WHERE  SALARIO�5000;
6 Marcar para revisão
Operadores de conjuntos em banco de dados são usados para combinar, comparar e
realizar operações em conjuntos de resultados de consultas. Eles são úteis quando você
deseja extrair informações de duas ou mais tabelas ou conjuntos de resultados
separados e combiná-los de várias maneiras.
Qual é a diferença entre o operador INTERSECT e o operador EXCEPT em SQL?
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 10/14
A
B
C
D
E
O operador INTERSECT retorna todas as linhas, incluindo repetições, enquanto o
operador EXCEPT exclui as repetições.
O operador INTERSECT combina todas as linhas resultantes de consultas,
enquanto o operador EXCEPT subtrai as linhas de uma consulta a partir daslinhas
de outra consulta.
O operador INTERSECT retorna apenas as linhas que aparecem em ambas as
consultas, enquanto o operador EXCEPT retorna apenas as linhas que não estão
presentes em ambas as consultas.
O operador INTERSECT é usado para operações de junção, enquanto o operador
EXCEPT é usado para filtrar dados com base em uma condição
O operador INTERSECT funciona apenas em bancos de dados Oracle, enquanto o
operador EXCEPT funciona em todos os sistemas de gerenciamento de banco de
dados.
Resposta incorreta
Opa! A alternativa correta é a letra C. Confira o gabarito comentado!
Gabarito Comentado
O operador INTERSECT encontra a sobreposição ou interseção de registros em dois
conjuntos, retornando registros comuns. Enquanto isso, o operador EXCEPT (ou
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 11/14
A
B
MINUS� encontra a diferença entre dois conjuntos, retornando registros que estão
em um conjunto, mas não no outro.
7 Marcar para revisão
Sejam as tabelas a seguir:
Seja a consulta a seguir:
SELECT CODIGONIVEL ,DESCRICAO
FROM NIVEL
WHERE CODIGONIVEL IN �SELECT DISTINCT CODIGONIVEL FROM CURSO�;
A consulta serve para:
Exibir os níveis para os quais há pelo menos um curso associado.
Exibir os cursos para os quais há pelo menos um nível associado.
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 12/14
C
D
E
Exibir os níveis para os quais não há curso associado.
Exibir somente os níveis para os quais há mais de um curso associado.
Exibir a descrição dos cursos e seus níveis.
Resposta incorreta
Opa! A alternativa correta é a letra A. Confira o gabarito comentado!
Gabarito Comentado
A resposta correta é: Exibir os níveis para os quais há pelo menos um curso associado.
8 Marcar para revisão
As operações de junção (ou JOIN em SQL� em bancos de dados são utilizadas para
combinar dados de duas ou mais tabelas com base em uma coluna comum. Elas são
essenciais para recuperar informações relacionadas de diferentes tabelas e consolidá-
las em um único resultado.
Qual é o resultado de uma junção à esquerda �LEFT JOIN�?
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 13/14
A
B
C
D
E
Retorna todas as linhas de ambas as tabelas.
Retorna apenas as linhas que têm correspondência entre as tabelas.
Retorna todas as linhas da tabela à esquerda e as linhas correspondentes da
tabela à direita.
Retorna todas as linhas da tabela à direita e as linhas correspondentes da tabela à
esquerda.
Retorna todas as linhas das tabelas envolvidas, preenchendo com valores nulos
quando não há correspondência.
Resposta correta
Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado!
Gabarito Comentado
Uma junção à esquerda �LEFT JOIN� retorna todas as linhas da tabela à esquerda e
as linhas correspondentes da tabela à direita, preenchendo com valores nulos
quando não há correspondência.
03/06/2024, 21:47 estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/
https://estacio.saladeavaliacoes.com.br/exercicio/665e632b5c2989b7a233eec2/gabarito/ 14/14

Mais conteúdos dessa disciplina