Q1. Zlotkey와 동일한 부서에 속한 모든 사원의 이름과 입사일을 표시하는 질의를 작성하십시오. Zlotkey는 제외.

select e1.last_name, e1.hire_date
from employees e1 join employees e2
on e2.department_id = (select e1.department_id
from employees e1
    where e1.last_name = 'Zlotkey')
and e1.last_name <> e2.last_name;
#sol2
select last_name, hire_date
from employees
where department_id = (select department_id
from employees
    where last_name = 'Ziotkey');
    




Q2. 급여가 평균 급여보다 많은 모든 사원의 사원번호와 이름을 표시하는 질의를 작성하고 결과를 급여에 대해 오름차순으로 정렬하십시오.

select employee_id, last_name, salary
from employees
where salary > (select avg(salary)
from employees)
order by salary;


Q3. 이름에 u가 포함된 사원과 같은 부서에서 일하는 모든 사원의 사원 번호와 이름을 표시하는 질의를 작성하시오.

select employee_id, last_name
from employees
where department_id = (select distinct department_id
from employees 
where last_name like '%u%');



Q4. 부서 위치 ID가 1700인 모든 사원의 이름, 부서 번호 및 업무 ID를 표시하십시오.

select last_name, department_id, job_id
from employees join locations
where location_id = 1700; 
#sol2
select last_name, department_id, job_id
from employees 
where department_id in (select deprtment_id
from departments 
    where location_id = 1700);


 
Q5. King에게 보고하는 모든 사원의 이름과 급여를 표시하십시오.

select last_name, salary
from employees
where manager_id in (select employee_id   #출력하는 값이 단일행이 아니라서 = 만 쓰면 안됌
from employees 
where last_name = 'king'); 

   

#sol2.
select last_name, salary
from employees
where manager_id = any (select employee_id 
from employees 
where last_name = 'king');



Q6. Executive 부서의 모든 사원에 대한 부서 번호, 이름 및 업무 ID를 표시하십시오.

select e.department_id, e.last_name, e.job_id
from employees e join departments d
where e.department_id = d.department_id
and d.department_name = 'executive';
#sol2
select department_id, last_name, job_id
from employees
where department_id = (select department_id 
from departments 
where department_name = 'Executive');




Q7. 3번 문제의 질의를 수정하여 평균 급여보다 많은 급여를 받고 이름에 u가 포함된 사원과 같은 부서에서 근무하는 모든 사원의 사원번호, 이름 및 급여를 표시하시오.

select employee_id, last_name, salary
from employees
where salary > all(select avg(salary)
from employees)
and department_id in (select department_id
from employees 
where last_name like '%u%');


    

'MySQL은 좀 낫다면서요' 카테고리의 다른 글

MySQL #테이블 : 게시판만들기  (0) 2021.06.17
MySQL #테이블  (0) 2021.06.17
MySQL #함수  (0) 2021.06.17
MySQL #Ch5.함수 : 연습문제  (0) 2021.06.17
MySQL #CH4. Join : 연습문제  (0) 2021.06.16

+ Recent posts