서브쿼리 기본 문제 풀이

김소희·2025년 1월 12일

MySQL

목록 보기
16/17
# SCOTT과 같은 부서에서 근무하는 직원의 이름과 부서 번호를 출력.
USE scott;

SELECT * FROM dept;
SELECT * FROM emp;
SELECT * FROM salgrade;

SELECT ename, deptno
FROM emp
WHERE deptno IN(
SELECT deptno
FROM emp
WHERE ename = 'scott'
);

# SCOTT과 동일한 직급을 가진 직원을 출력.
SELECT *
FROM emp
WHERE job IN(
SELECT job
FROM emp
WHERE ename = 'scott'
);

# 사원 테이블에서 MILLER 보다 늦게 입사한 사원의 사번, 이름, 입사일을 출력.
SELECT empno, ename, hiredate
FROM emp
WHERE hiredate > (
SELECT hiredate
FROM emp
WHERE ename = 'miller'
);

# 사원 테이블에서 사원 전체 평균 급여보다 급여가 많은 사원들의 사번, 이름 , 급여를 출력.
SELECT empno, ename, sal
FROM emp
WHERE sal > (
SELECT AVG(sal)
FROM emp
);
# 사원번호와 전체사원 중 최고급여를 출력.
# 모든 사원을 표기하고 그 중 최고급여를 출력 하기
 
SELECT empno, ename, (SELECT MAX(sal) FROM emp) AS '최고급여'
FROM emp;


# 사원번호와 전체사원의 평균급여를 출력
# 모든 사원을 표기하고 그 중 평균급여를 출력 하기
SELECT empno, ename, (SELECT AVG(sal) FROM emp) AS '평균급여'
FROM emp;


# DEPT Table 에는 존재하는 부서코드이지만 해당부서에 근무하는 사람이 존재하지 않는 경우의 결과를 출력.
SELECT *
FROM dept
WHERE deptno NOT IN (
SELECT deptno
FROM emp
);

0개의 댓글