SQLD(SQL 개발자) 기출 · JOIN

아래와 같이 일자별매출 테아블이 존재할 때 아래 결과처럼 일자별 누적매출액을 SQL로 구하려고 한다. WINDOW FUNCTION을 사용하지 않고 일자별 누적매출액을 구하는 SQL로 옳은 것은?

이 문제 풀어보기

정답 및 해설 보기

정답: 2번

④는 일자별매출액에 일자별 매출 테이블과 동일하게 출력된다.
①,③는 작은 날짜쪽에 제일 큰 누적금액이 출력된다.
②은 일자별매출 테이블을 Self Join하여, A Alias 쪽에 먼저 읽혔다고 가정하면 다음처럼 데이터가
생성될 것이다.
1.A가 {2015.11.01, 1000} 일 때 B는 {2015.11.01, 1000}
2. A가 {2015.11.02, 1000} 일 때 B는 {{2015.11.01, 1000}, {2015.11.02, 1000}}
3. A가 {2015.11.03, 1000} 일 때 B는 {{2015.11.01, 1000}, {2015.11.02,1000}, {2015.11.03, 1000}}
위의 Self Join은 Equi Join이 아닌 Range Join이므로 A의 레코드는 B의 레코드 수 만큼 증가하게
된다.(A * B) 그러므로 위의 3번의 경우 A는 B의 레코드 개수와 동일하게 되므로 SUM(매출금액)을
하면 3,000이 된다. 이런 식으로 A Alias의 모든 레코드 개수를 Scan하면 누적 값을 출력하게 된다.
이 단원 연속 풀기 · JOIN개념서 「JOIN」 읽기

이 단원 공개 기출 77문항

  1. 다음 중 아래의 SQL 수행 결과로 가장 적절한 것은? [그림]JOIN
  2. Hash Join 기법에 대한 설명으로 옳은 것은?JOIN
  3. JOIN의 종류에 대한 설명으로 틀린 것은 무엇인가?JOIN
  4. 4개의 테이블로부터 필요한 칼럼을 조회하려고 한다. 최소 몇 개의 JOIN 조건이 필요한가?JOIN
  5. 다음 중 SELF JOIN을 수행해야 할 때는 어떤 경우인가?JOIN
JOIN 기출 전체 보기 →