코드 1-1과 같이 가상 테이블(쿼리)을 만들면 중복 데이터를 저장하면서 발생하는 단점 없이 그림 1-3에 있는 원래 데이터를 쉽게 재생성할 수 있다(‘BETTER WAY 42. 가능하면 서브쿼리 대신 공통 테이블 표현식을 사용하자’에서처럼 가상 테이블은 공통 테이블 표현식(Common Table Expression, CTE)을 이용해 생성할 수 있다).

    코드 1-1 원래 데이터를 반환하는 SQL

    SELECT st.SalesID, c.CustFirstName, c.CustLastName, c.Address,

      c.City, c.Phone, st.PurchaseDate, m.ModelYear, m.Model,

      e.SalesPerson

    FROM SalesTransactions st

      INNER JOIN Customers c

        ON c.CustomerID = st.CustomerID

      INNER JOIN Employees e

        ON e.EmployeeID = st.SalesPersonID

      INNER JOIN AutomobileModels m

        ON m.ModelID = st.ModelID;


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