Prévia do material em texto
1a Questão (Ref.: 201306116147) Pontos: 1,5 / 1,5 CONSIDERE O BANCO DE DADOS CRIADO A PARTIR DOS COMANDOS ABAIXO: CREATE TABLE DISCIPLINA (COD_DISCIPLINA VARCHAR (7) PRIMARY KEY, NOME_DISC VARCHAR (20) NOT NULL, CARGA_HORARIA NUMBER (3) NOT NULL) CREATE TABLE TURMA (COD_TURMA NUMBER (4) PRIMARY KEY, ANO NUMBER (4) NOT NULL, SEMESTRE VARCHAR (1) NOT NULL, COD_DISC VARCHAR (7) REFERENCES DISCIPLINA (COD_DISCIPLINA)); QUAL A CONSULTA SQL PARA RECUPERAR TODOS OS DADOS DE TODAS AS DISCIPLINAS? Resposta: Select * from disciplina Gabarito: SELECT * FROM DISCIPLINA Fundamentação do(a) Professor(a): ok 2a Questão (Ref.: 201306116538) Pontos: 1,5 / 1,5 Escreva uma consulta SQL que recupere o nome(nome_dependente) e o parentesco dos dependentes da empregada Luciana. Resposta: Select D.nome_dependente, D.parentesco From Empregado E, Dependente D On E.codigo_empregado = D.codigo_empregado Where E.nome like '%Luciana'; Gabarito: Sugestão: SELECT nome_dependente, parentesco FROM empregado e, dependente d WHERE e.codigo_empregado = d.codigo_empregado AND nome = 'Luciana'. Fundamentação do(a) Professor(a): ok 3a Questão (Ref.: 201306107928) Pontos: 0,0 / 0,5 É responsável por garantir a Integridade Referencial: Chave de Atributo Chave Candidata Chave Estrangeira Chave Primária Chave Secundária 4a Questão (Ref.: 201306108262) Pontos: 0,5 / 0,5 A partir da tabela abaixo, identifique a expressão, em álgebra relacional, que permite listar a matrícula dos funcionários do setor de Projetos: π matricula (σ setor = "Projetos" (Funcionarios_ste)) π Funcionarios_ste (σ matricula, setor = "Projetos") σ setor = "Projetos" (Funcionarios_ste) π setor = "Projetos" (σ matricula (Funcionarios_ste)) σ matricula (π setor = "Projetos" (Funcionarios_ste)) 5a Questão (Ref.: 201306108114) Pontos: 0,5 / 0,5 O comando SQL que apaga um tabela é: INSERT INTO UPDATE DROP TABLE REMOVE TABLE DELETE TABLE 6a Questão (Ref.: 201306264022) Pontos: 0,0 / 0,5 Qual a sintaxe abaixo gera um produto cartesiano entre as duas tabelas: SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, C.VC_CAR_NOME AS CARGO FROM EMPREGADO E INNER JOIN CARGO C ON E.NU_EMP_CARGO = C.ID_CAR_CODIGO; SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, C.VC_CAR_NOME AS CARGO FROM EMPREGADO E RIGHT JOIN CARGO C ON E.NU_EMP_CARGO = C.ID_CAR_CODIGO; SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, C.VC_CAR_NOME AS CARGO FROM EMPREGADO E, CARGO C; SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, C.VC_CAR_NOME AS CARGO FROM EMPREGADO E, CARGO C WHERE E.NU_EMP_CARGO = C.ID_CAR_CODIGO; SELECT E.ID_EMP_MATRICULA AS MATRICULA, E.VC_EMP_NOME AS NOME, C.VC_CAR_NOME AS CARGO FROM EMPREGADO E LEFT JOIN CARGO C ON E.NU_EMP_CARGO = C.ID_CAR_CODIGO; 7a Questão (Ref.: 201306108190) Pontos: 0,0 / 0,5 De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para: Apresentar o menor salário pago aos Empregados Agrupados por Departamento. SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID; SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID; SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; SELECT MINIMO(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO; 8a Questão (Ref.: 201306264013) Pontos: 0,5 / 0,5 Para se obter a quantidade de empregados por cargo deve-se digitar qual o select abaixo: SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE GROUP BY C.DESCRICAO FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO; SELECT C.DESCRICAO AS CARGO, SUM(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO GROUP BY C.DESCRICAO; SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO GROUP BY C.DESCRICAO; SELECT DESCRICAO AS CARGO, COUNT(MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON CODIGO = CARGO GROUP BY DESCRICAO; SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E GROUP BY C.DESCRICAO; 9a Questão (Ref.: 201306030578) Pontos: 0,0 / 1,0 Com base nas tabelas empregado(mat, cpf, nome) e aluno(mat, cpf, nome), assinale a opção correta que corresponde à consulta a seguir: select cpf from empregado intersect select cpf from aluno; A consulta retornará um erro A consulta exibirá o cpf de todos os empregados e de todos os alunos A consulta exibirá o cpf dos empregados que também são alunos A consulta exibirá somente o cpf dos empregados A consulta incluirá na tabela empregado todos os cpf dos alunos 10a Questão (Ref.: 201306245157) Pontos: 1,0 / 1,0 Uma unidade de execução de programa delimitada pelos comandos BEGIN TRANSACTION e END TRANSACTION é denominada uma: Proograma Seleção Comando Operação Transação