Baixe o app para aproveitar ainda mais
Prévia do material em texto
Pergunta 1 Resposta Selecionada: e. Respostas: a. b. c. d. e. Com base no DER abaixo, qual a forma correta para criar uma query que mostre o último nome, o número do departamento e o código do cargo de todos os empregados cuja localização do departamento seja igual a 1700? select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id in(select department_id from departments wherelocation_id=1700) select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id =(select department_id from departments wherelocation_id=1700) select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id not in(select department_id from departments wherelocation_id=1700) select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id>(select department_id from departments wherelocation_id=1700) select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id<=(select department_id from departments wherelocation_id=1700) select last_name "Último Nome", department_id "Código do Depto", job_id "Código Do Cargo" from employees wheredepartment_id in(select department_id from departments wherelocation_id=1700) 0,175 em 0,175 pontos Comentário da resposta: para saber qual o código do departamento cuja localização seja igual 1700 devemos montar uma subquery selecionando o código do departamento. Esse resultado é passado para a query principal e, na cláusula WHERE, devemos utilizar o comando IN, porque o resultado da subquery retornará mais de um registro. Pergunta 2 Resposta Selecionada: d. Respostas: a. b. c. d. e. Comentário da resposta: Com base no DER abaixo, qual a forma correta para criar uma query que mostre o último nome e o salário de todos os funcionários que tenham o Steve King como gerente? select first_name, last_name, salary from employees wheremanager_id = (select employee_id from employees whereFirst_Name = 'Steven' And last_name ='King') select first_name, last_name, salary from employees wheremanager_id> (select employee_id from employees whereFirst_Name = 'Steven' And last_name ='King') select first_name, last_name, salary from employees wheremanager_id not exists (select employee_id from employees whereFirst_Name = 'Steven' And last_name ='King') select first_name, last_name, salary from employees wheremanager_id not in(select employee_id from employees whereFirst_Name = 'Steven' And last_name ='King') select first_name, last_name, salary from employees wheremanager_id = (select employee_id from employees whereFirst_Name = 'Steven' And last_name ='King') select first_name, last_name, salary from employees wheremanager_id between ( First_Name = 'Steven' And last_name ='King') Para retornar todos os funcionários que estão responsáveis pelo gerente Steve King, primeiro precisamos saber qual o Id de empregado do funcionário Steven King. Após identificar o id, devemos informar esse código para consultá-lo através do campo manager_id. Pergunta 3 Com base no DER abaixo, qual a construção correta para a solicitaçãoseguinte? Encontre os empregados que têm, no mínimo, uma pessoa subordinada a cada um deles. 0,175 em 0,175 pontos 0,175 em 0,175 pontos Resposta Selecionada: a. Respostas: a. b. c. d. SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE EXISTS (SELECT EMPLOYEE_ID FROM EMPLOYEES WHERE EMPLOYEES.MANAGER_ID = E. EMPLOYEE_ID) ORDER BY EMPLOYEE_ID; SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE EXISTS (SELECT EMPLOYEE_ID FROM EMPLOYEES WHERE EMPLOYEES.MANAGER_ID = E. EMPLOYEE_ID) ORDER BY EMPLOYEE_ID; SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE NOT EXISTS (SELECT EMPLOYEE_ID FROM EMPLOYEES WHERE EMPLOYEES.MANAGER_ID = E. EMPLOYEE_ID) ORDER BY EMPLOYEE_ID; SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE EXISTS (SELECT EMPLOYEE_ID FROM EMPLOYEES) ORDER BY EMPLOYEE_ID; SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE EMPLOYEE_ID >= (SELECT EMPLOYEE_ID FROM EMPLOYEES WHERE EMPLOYEES.MANAGER_ID = E. EMPLOYEE_ID) ORDER BY EMPLOYEE_ID; e. Comentário da resposta: SELECT EMPLOYEE_ID, MANAGER_ID, FIRST_NAME, LAST_NAME, JOB_ID, DEPARTMENT_ID, SALARY FROM EMPLOYEES E WHERE EXISTS IN (SELECT EMPLOYEE_ID FROM EMPLOYEES WHERE EMPLOYEES.MANAGER_ID = E. EMPLOYEE_ID) ORDER BY EMPLOYEE_ID; O operador EXISTS é frequentemente usado com subpesquisas correlatas. Ele testa quando um valor existe. (NOT EXISTS garante que não existe). Se o valor existir, será retornado Verdadeiro; se não existir, será retornado Falso. Pergunta 4 Pergunta Correspondência Correta Correspondência Selecionada A. A. B. B. C. C. D. D. Escolhas com todas as respostas A. B. C. D. Estabeleça a correspondência entre a primeira e a segunda coluna, ligando, com num traço, o operador e seu significado. EXISTS Testa se um valor existe Testa se um valor existe IN Igual a qualquer membro da lista Igual a qualquer membro da lista ANY Compara o valor com cada valor retornado pela subquery Compara o valor com cada valor retornado pela subquery ALL Compara o valor com todos os valores retornados pela subquery Compara o valor com todos os valores retornados pela subquery Testa se um valor existe Igual a qualquer membro da lista Compara o valor com cada valor retornado pela subquery Compara o valor com todos os valores retornados pela subquery 0,175 em 0,175 pontos
Compartilhar