빅데이터/Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문

[오라클로 배우는 데이터베이스 입문 | 09장 SQL문 속 또 다른 SQL문, 서브쿼리] 문제 풀이 (p262)

KimKelly 2023. 3. 4. 08:22
반응형

[오라클로 배우는 데이터베이스 입문]
09장 SQL문 속 또 다른 SQL문, 서브쿼리

문제 풀이 (p262)

 

Q1. 전제 사원 중 ALLEN과 같은 직책(JOB)인 사원들의 사원 정보, 부서 정보를 다음과 같이 출력하는 SQL문을 작성해라.

*WHERE절 뒤에 작성하는 단일행 서브쿼리 문제

 

 

Q2. 전체 사원의 평균 급여(SAL)보다 높은 급여를 받는 사원들의 사원 정보, 부서 정보, 급여 등급 정보를 출력하는 SQL문을 작성해라. (급여가 많은 순으로 정렬하되, 급여가 같을 경우에는 사원 번호를 기준으로 오름차순으로 정렬)

*WHERE절 뒤에 작성하는 단일행 서브쿼리 문제

*출력하고자 하는 열의 순서대로 기입해야 함.

 

 

Q3. 10번 부서에 근무하는 사원 중 30번 부서에는 존재하지 않는 직책을 가진 사원들의 사원 정보, 부서 정보를 다음과 같이 출력하는 SQL문을 작성해라.

*WHERE절 뒤에 작성하는 다중행 서브쿼리 문제

*서브쿼리 결과가 단일행이 아닌 다중행이므로, 단일행 연산자(>, >=, =, <=, <, !=)가 아닌 다중행 연산자(IN, ANY/SOME, ALL, EXISTS)를 사용해야 함.

*위 사진 25번째 줄에서 DISTINCT 생략 가능

 

 

Q4. 직책이 SALESMAN인 사람들의 최고 급여보다 높은 급여를 받는 사원들의 사원 정보, 급여 등급 정보를 다음과 같이 출력하는 SQL문을 작성해라. (사원 번호를 기준으로 오름차순으로 정렬)

 

1) 서브쿼리 활용 시 다중행 함수를 사용하는 방법

 

2) 서브쿼리 활용 시 단일행 함수를 사용하는 방법 

*WHERE절 뒤에 작성하는 단일행 또는 다중행 서브쿼리 문제

반응형