Procura

Banco de dadosSql


EXERCÍCIOS - Exercício 464

  • (UNIRIO 2012)

Um desenvolvedor solicita sua ajuda para construir uma consulta que retorne o nome do departamento e o nome do empregado que tem salário igual ao maior salário do departamento. A opção que corresponde ao comando que retorna os dados, CORRETAMENTE, de acordo com a estrutura das tabelas apresentadas a seguir:
DEPARTAMENTO ( CODIGO_DEPT INTEGER PRIMARY KEY, NOME VARCHAR(80) NOT NULL);
EMPREGADO ( CODIGO_EMP INTEGER PRIMARY KEY, NOME VARCHAR(80) NOT NULL,
SALARIO FLOAT, CODIGO_DEPT INTEGER NOT NULL,
CONSTRAINT EMP_DEPT_FK FOREIGN KEY (CODIGO_DEPT)
REFERENCES DEPARTAMENTO(CODIGO_DEPT));



A) SELECT D.NOME, E.NOME FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.CODIGO_DEPT=D.CODIGO_DEPT WHERE E.SALARIO = (SELECT MAX(SALARIO) FROM EMPREGADO E2).


B) SELECT D.NOME, E.NOME FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.CODIGO_DEPT=D.CODIGO_DEPT WHERE E.SALARIO = (SELECT MAX(SALARIO) FROM EMPREGADO E2 WHERE E2.CODIGO_DEPT=E.CODIGO_DEPT GROUP BY SALARIO).


C) SELECT D.NOME, E.NOME FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.CODIGO_DEPT=D.CODIGO_DEPT GROUP BY D.NOME, E.NOME HAVING MAX(SALARIO).


D) SELECT D.NOME, E.NOME FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.CODIGO_DEPT=D.CODIGO_DEPT WHERE E.SALARIO IN (SELECT MAX(SALARIO) FROM EMPREGADO E2 INNER JOIN DEPARTAMENTO D2 ON E2.CODIGO_DEPT=D2.CODIGO_DEPT GROUP BY D2.CODIGO_DEPT).


E) SELECT D.NOME, E.NOME FROM EMPREGADO E INNER JOIN DEPARTAMENTO D ON E.CODIGO_DEPT=D.CODIGO_DEPT WHERE E.SALARIO = (SELECT MAX(SALARIO) FROM EMPREGADO E2 WHERE E2.CODIGO_DEPT=E.CODIGO_DEPT).


Próximo:
EXERCÍCIOS - Exercício 465

Vamos para o Anterior: Exercício 463

Tente Este: Exercício 57

Primeiro: Exercício 1

VOLTAR ao índice: Banco de dados






Cadastre-se e ganhe o primeiro capítulo do livro.
+
((ts_substr_ig=0.00ms))((ts_substr_id=8.87ms))((ts_substr_m2=0.00ms))((ts_substr_p2=0.53ms))((ts_substr_c=1.19ms))((ts_substr_im=0.80ms))
((total= 11ms))