[ORACLE] SQL DEVELOPER 4일차 - 서브쿼리 문제풀이

jeong·2021년 6월 7일
0

Oracle(SQL) 오라클

목록 보기
10/16

서브쿼리 PDF 5문제 풀이

문제1. 사원 테이블에서 BLAKE보다 급여가 많은 사원들의 사번,이름,급여를 검색하시오

SELECT EMPNO,ENAME,SAL FROM EMP WHERE SAL>(SELECT MIN(SAL) FROM EMP WHERE ENAME='BLAKE');

SELECT EMPNO,ENAME,SAL FROM EMP WHERE SAL>(SELECT SAL FROM EMP WHERE ENAME='BLAKE');

문제2. 사원 테이블에서 MILLER보다 늦게 입사한 사원의 사번,이름,입사일을 검색하시오 --날짜는 커질수록 미래, 작아질수록 과거
SELECT EMPNO,ENAME,HIREDATE FROM EMP WHERE HIREDATE>(SELECT MIN(HIREDATE) FROM EMP WHERE ENAME='MILLER');

SELECT EMPNO,ENAME,HIREDATE FROM EMP WHERE HIREDATE>(SELECT HIREDATE FROM EMP WHERE ENAME='MILLER');

문제3. 사원 테이블에서 사원 전체 평균 급여보다 급여가 많은 사원들의 사번,이름,급여를 검색하시오

SELECT EMPNO,ENAME,SAL FROM EMP WHERE SAL>(SELECT AVG(SAL) FROM EMP);

문제4.사원 테이블에서 CLARK와 같은 부서이며 사번이 7698인 직원의 급여보다 많은 급여를 받는 사원들의 사번,이름,급여를 검색하시오

SELECT EMPNO,ENAME,SAL FROM EMP WHERE DEPTNO=(SELECT DEPTNO FROM EMP WHERE ENAME='CLARK')
    AND SAL>(SELECT SAL FROM EMP WHERE EMPNO=7698);

문제5. 사원 테이블에서 부서별 최대 급여를 받는 사원들의 사번,이름,부서코드,급여를 검색하시오

SELECT EMPNO,ENAME,DEPTNO,SAL FROM EMP WHERE SAL=(SELECT MAX(SAL) FROM EMP); --전체 중 최대 급여받는 사람 

SELECT EMPNO,ENAME,DEPTNO,SAL FROM EMP WHERE SAL IN(SELECT MAX(SAL) FROM EMP GROUP BY DEPTNO); --행이 여러개라 =이 아니라 IN 사용해야함 
profile
배우는 초보개발자

0개의 댓글