고연봉 IT 직무를 위한 CTE
이전 연습 문제에서 IT 직무를 찾는 CTE를 만들었죠. 이제 이 결과를 salary 테이블을 사용하는 또 다른 CTE와 결합해 보겠습니다. 하나의 쿼리에서 여러 CTE를 정의할 것이며, 각 CTE 정의는 쉼표로 구분된다는 점에 주의하세요. salary 테이블에는 직원의 ID와 salary에 대한 추가 정보가 들어 있습니다. 여러분의 과제는 ITsalary라는 두 번째 CTE를 만들고, 직원 ID를 기준으로 두 CTE 테이블을 JOIN하는 것입니다. 이 JOIN은 두 테이블에서 값이 일치하는 레코드만 선택해야 합니다. 마지막으로 3000보다 많이 버는 직원만 찾으세요.
이 연습은 강의의 일부입니다
SQL Server에서의 계층형 및 재귀 쿼리
연습 안내
- 두 번째 CTE
ITsalary를ID,Salary필드로 정의하세요. 3000초과 급여를 찾으세요.- 일치하는
ID로 두 CTE를JOIN하여 선택된 직원의 이름, 급여, 직무를 선택하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
WITH ITjobs (ID, Name, Position) AS (
SELECT
ID,
Name,
Position
FROM employee
WHERE Position like 'IT%'),
-- Define the second CTE table ITsalary with the fields ID and Salary
___ (___, ___) AS (
SELECT
ID,
Salary
FROM Salary
-- Find salaries above 3000
WHERE ___ ___ 3000)
SELECT
ITjobs.NAME,
ITjobs.POSITION,
ITsalary.Salary
FROM ITjobs
-- Combine the two CTE tables the correct join variant
___ ___ ITsalary
-- Execute the join on the ID of the tables
ON ITjobs.ID = ITsalary.ID;