더북(TheBook)

Self Check

1 정답

CREATE OR REPLACE VIEW dept_emp_sal_v AS
SELECT a.dept_name, b.emp_no, c.first_name, c.last_name, d.salary
  FROM departments a, dept_emp b, employees c, salaries d
 WHERE a.dept_no = b.dept_no
   AND SYSDATE() BETWEEN b.from_date AND b.to_date
   AND b.emp_no = c.emp_no
   AND c.emp_no = d.emp_no
   AND SYSDATE() BETWEEN d.from_date AND d.to_date;

해설 dept_emp_info_v 뷰를 만든 쿼리에 salaries 테이블과의 조인을 추가합니다. 이때 employees 테이블의 emp_no 칼럼과 salaries 테이블의 emp_no 칼럼 값이 같은 조건을 줍니다. salaries 테이블에도 from_date와 to_date 칼럼이 있으므로 SYSDATE() 함수로 현재 기준 급여를 확인하는 조건을 추가합니다. 마지막으로 CREATE OR REPLACE VIEW 구문에서 생성하는 뷰 이름을 dept_emp_sal_v로 지정합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.