< 이전 | 다음 >

조인, 쿼리 조건 및 GROUP BY절 추가

이 연습에서 쿼리 결과를 현재 비디오를 대여 중인 고객 및 현재 대여 중인 비디오로 제한합니다. 또한 쿼리 결과를 쿼리를 실행할 때 지정한 이름의 특정 고객으로 제한합니다. 마지막으로 대여한 비디오 반납 요일별로 쿼리 결과를 구성합니다. 각각의 요일에 비디오 제목별로 비디오를 정리하고 각각의 비디오 제목은 고객 이름별로 정리합니다.

테이블 조인

조인 조작을 통해 일치하는 컬럼 값에 따라 둘 이상의 테이블에서 데이터를 검색할 수 있습니다. 테이블의 데이터는 단일 결과로 링크됩니다. 이 쿼리에는 두 개의 조인이 필요합니다. 쿼리 결과에는 CUST_ID 컬럼 값이 일치하는 대여 및 고객 테이블이 포함되어야 합니다. 또한 비디오 ID(VID_ID 컬럼 값)가 일치하는 대여 및 비디오 테이블 항목도 쿼리 결과에 포함되어야 합니다.

테이블을 조인하려면 다음을 수행하십시오.

  1. 테이블 분할창에서 R 테이블의 헤더를 마우스 오른쪽 단추로 누른 다음 팝업 메뉴에서 조인 작성을 누르십시오.
  2. 소스의 조인 작성 창에서 다음을 선택하십시오.
    1. 테이블 (별명) 목록에서 RENTALS (R)를 누르십시오.
    2. 컬럼 목록에서 CUST_ID를 누르십시오.
  3. 대상에서 다음을 선택하십시오.
    1. 테이블(별명) 목록에서 CUSTOMERS를 누르십시오.
    2. 컬럼 목록에서 CUST_ID를 누르십시오.
  4. 확인을 클릭하십시오. 두 컬럼 사이에 조인 커넥터가 표시됩니다.
  5. 테이블 분할창에서 포인터를 R(RENTAL) 테이블의 VID_ID 컬럼에서 V(VIDEO) 테이블의 VID_ID 컬럼으로 끌어 오십시오.
SQL 소스 코드 분할창에서 소스 코드의 조인을 찾으십시오.
    FROM       XMLTEST.CUSTOMERS AS C JOIN XMLTEST.RENTALS AS R ON C.CUST_ID = R.CUST_ID 
       JOIN XMLTEST.VIDEOS AS V ON R.VID_ID = V.VID_ID

테이블 분할창에 두 개의 조인이 모두 여기에 표시된 대로 작성되었습니다.

테이블 조인

커넥터를 마우스 오른쪽 단추로 누르고 팝업 메뉴에서 조인 유형 지정을 누른 다음 조인 지정 창에서 원하는 조인 유형을 선택하여 테이블 분할창에서 조인 유형을 변경할 수 있습니다(예: 디폴트 내부 조인에서 왼쪽, 오른쪽 또는 완전 외부 조인으로 변경).

쿼리 조건 작성

그 다음으로, 원하는 고객 이름이 있는 결과 행만을 추출하도록 하는 쿼리 조건이 필요합니다. 디자인 분할창에서 조건 페이지를 사용하여 쿼리에 조건을 추가합니다.

쿼리 조건을 작성하려면 다음을 수행하십시오.

  1. 조건 탭을 눌러 조건 페이지를 표시하십시오.
  2. 첫 번째 행에서 컬럼 컬럼의 셀을 더블 클릭한 다음 목록에서 C.NAME을 누르십시오.
  3. 같은 행에서 연산자 컬럼의 셀을 더블 클릭한 다음 = 연산자를 누르십시오.
  4. 해당 행에서 컬럼의 셀을 더블 클릭한 다음 :CUSTNAME을 입력하십시오. 변수 이름 앞의 콜론은 쿼리를 실행할 때 값으로 대체되는 변수의 SQL 구문입니다. SQL 쿼리를 실행하면 이것이 어떻게 이루어지는지 알 수 있습니다.
이제 조건 페이지가 여기에 표시된 이미지처럼 나타납니다.

디자인 분할창 - 조건 페이지

GROUP BY절 추가

쿼리를 요일별로 그룹화한 다음 제목별 그리고 고객 이름별로 그룹화합니다.
SQL 쿼리 빌더에 GROUP BY절을 작성하려면 디자인 분할창의 그룹 페이지를 사용하십시오. 이 보기에서 계산 결과 컬럼, 중첩 그룹, 그룹화 세트를 사용하여 쿼리 결과에 고급 그룹화를 작성할 수도 있습니다.

GROUP BY절을 추가하려면 다음을 수행하십시오.

  1. 디자인 분할창에서 그룹 탭을 누르십시오.
  2. 결과 컬럼으로 DAYOFWEEK 함수를 추가하십시오.
    1. 컬럼 테이블에서 첫 번째 행을 더블 클릭하고 목록에서 표현식 빌드를 클릭한 다음 Enter를 누르십시오.
    2. 마법사의 표현식 유형 페이지에서 함수를 누르고 다음을 누르십시오. 함수 표현식 빌더 페이지가 열립니다.
    3. 함수 선택 범주 목록에서 날짜 및 시간을 누르십시오.
    4. 함수 선택 목록에서 DAYOFWEEK를 누르십시오.
    5. 함수 시그니처 선택 목록에서 DAYOFWEEK(DATE) --> INTEGER를 누르십시오. 함수 시그니처는 함수에 하나의 인수가 필요함을 표시합니다.
    6. 인수 테이블의 컬럼에서 셀을 누르고 목록에서 R.DATE를 누른 다음 Enter를 누르십시오.
    7. 완료를 클릭하십시오. DAYOFWEEK 함수가 컬럼 테이블의 첫 번째 셀에 표시됩니다.
  3. 컬럼 테이블의 두 번째 행에서 목록의 V.TITLE 컬럼을 선택한 후 세 번째 행에서 C.NAME을 선택하십시오. 이제 그룹 페이지가 다음 이미지처럼 나타납니다.

    디자인 분할창 - 그룹 페이지

이제 쿼리가 완료됩니다. 쿼리가 SQL 쿼리 빌더에서 다음과 같이 나타납니다.

완료된 쿼리

< 이전 | 다음 >

피드백