Buscar

IBD4 - Simulados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

1a Questão (Ref.: 201502630094) Pontos: 0,1 / 0,1 
Qual comando representa a especificação abaixo? 
 
Especifica a junção entre duas tabelas com uma cláusula de junção explícita. 
 
 
SELECT 
 
GROUP BY 
 
ORDER BY 
 INNER JOIN 
 
WHERE 
 Gabarito Comentado. 
 
 
 
 2a Questão (Ref.: 201503278280) Pontos: 0,1 / 0,1 
A partir das relações abaixo, responda em SQL: quantos alunos (nota maior ou igual a 6) foram aprovados na 
disciplina 'Banco de Dados' com o professor 'Rui'? 
Use inner join. Relações: 
 
PROFESSOR (idprofessor, nomeprofessor); 
 
LECIONA (idprofessor, iddisciplina); 
 
DISCIPLINA (iddisciplina, nomedisciplina); 
 
ALUNO (matricula, nomealuno); 
 
MATRICULA (inscrição, iddisciplina, matricula, nota, período, ano) 
 
 
SELECT count(*) AS total FROM professor p, leciona l, matricula m WHERE p.idprofessor = l.idprofessor 
AND m.iddisciplina = d.iddisciplina AND nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados' 
 
SELECT count(*) AS total FROM professor p LEFT JOIN leciona l ON p.idprofessor = l.idprofessor LEFT 
JOIN disciplina d ON l.iddisciplina = d.iddisciplina LEFT JOIN matricula m ON m.iddisciplina = 
d.iddisciplina WHERE nomeprofessor = 'Rui' OR nomedisciplina = 'Banco de Dados' 
 
SELECT sum(*) AS total FROM professor p, leciona l, matricula m WHERE p.idprofessor = l.idprofessor 
AND m.iddisciplina = d.iddisciplina AND nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados' 
 
SELECT count(distinct) AS total FROM professor p RIGHT JOIN leciona l ON p.idprofessor = l.idprofessor 
RIGHT JOIN disciplina d ON l.iddisciplina = d.iddisciplina RIGHT JOIN matricula m ON m.iddisciplina = 
d.iddisciplina WHERE nomeprofessor = 'Rui' OR nomedisciplina = 'Banco de Dados' 
 SELECT count(distinct) AS total FROM professor p INNER JOIN leciona l ON p.idprofessor = l.idprofessor 
INNER JOIN disciplina d ON l.iddisciplina = d.iddisciplina INNER JOIN matricula m ON m.iddisciplina = 
d.iddisciplina WHERE nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados' 
 
 
 
 3a Questão (Ref.: 201502864067) Pontos: 0,1 / 0,1 
Para se obter todos as matrículas, nomes e descrições dos departamentos de todos empregados independente 
de terem ou não códigos de departamento atribuídos (entenda-se por nulo os departamentos não atribuídos) 
deve-se escrever qual o select: 
 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E RIGHT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
 SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E LEFT JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO = 
D.ID_DEP_CODIGO WHERE E.NU_EMP_DEPARTAMENTO IS NULL; 
 
SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, D.VC_DEP_NOME AS 
DEPARTAMENTO FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.NU_EMP_DEPARTAMENTO != 
D.ID_DEP_CODIGO; 
 Gabarito Comentado. 
 
 
 
 4a Questão (Ref.: 201502718611) Pontos: 0,1 / 0,1 
 
Qual das consultas abaixo retorna o nome e a placa de todos os veículos? 
 
 SELECT v.placa, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf; 
 
SELECT v.placa, c.nome FROM Cliente INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf; 
 
SELECT c.nome FROM Veiculo v INNER JOIN Cliente c ON cpf = cpf; 
 
SELECT c.cpf, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf WHERE v.placa; 
 
SELECT placa FROM Veiculo INNER JOIN Cliente ON Cliente_cpf = cpf; 
 
 
 
 5a Questão (Ref.: 201503385285) Pontos: 0,1 / 0,1 
 
Um sistema de informação usa um banco de dados relacional que possui tabelas cujos esquemas em SQL estão 
representados a seguir. 
CREATE TABLE Artista ( 
id INTEGER PRIMARY KEY, 
nome VARCHAR(40) NOT NULL, 
CPF CHAR(11) NOT NULL, 
dataNascimento DATE, 
UNIQUE (CPF) ); 
 
CREATE TABLE Evento ( 
id INTEGER PRIMARY KEY, 
descricao VARCHAR(60) NOT NULL, 
numMaxConvidados INTEGER DEFAULT 0, 
CHECK (numMaxConvidados >= 0) ); 
 
CREATE TABLE Atuacao ( 
idArtista INTEGER, 
idEvento INTEGER, 
PRIMARY KEY (idArtista, idEvento), 
FOREIGN KEY (idArtista) REFERENCES Artista, 
FOREIGN KEY (idEvento) REFERENCES Evento(id)); 
 
O sistema também possui uma consulta que integra um de seus relatórios, conforme indicado a seguir: 
 
SELECT A.nome, E.descricao 
FROM Evento E FULL JOIN Atuacao T ON E.id = T.idEvento 
FULL OUTER JOIN Artista A ON T.idArtista = A.id 
 
Considerando que todas as tabelas possuem dados, o resultado da consulta utilizada no relatório e: 
 
 O nome de todos os artistas, a descrição de todos os eventos e, caso eles se relacionem, os dois 
combinados. 
 
O nome de todos os artistas combinados com a descrição de todos os eventos 
 
O nome de todos os artistas e, caso eles participem de eventos, a descrição do evento. 
 
O nome de todos os artistas e a descrição de todos os eventos em que eles atuam. 
 
A descrição de todos os eventos e, caso haja artistas alocados, os seus nomes. 
 Gabarito Comentado.

Continue navegando