다음 SQL 이 [결과]를 내도록 ㉠에 들어갈 구문으로 옳은 것은?[운… | [SQLD] SQL 개발자 기출유형 모의고사 4회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 4회
다음 SQL 이 [결과]를 내도록 ㉠에 들어갈 구문으로 옳은 것은?

[운항실적]

편명운항일탑승객수
KE1012026-03-01120
KE1012026-03-02150
KE1012026-03-0390
KE1012026-03-04200
OZ3302026-03-0180
OZ3302026-03-02100
OZ3302026-03-0360
SELECT 편명, 운항일, 탑승객수,
       SUM(탑승객수) OVER (PARTITION BY 편명
                           ORDER BY 운항일
                           ( ㉠ )) AS 합계
  FROM 운항실적
 ORDER BY 편명, 운항일;

[결과]

편명운항일탑승객수합계
KE1012026-03-01120120
KE1012026-03-02150270
KE1012026-03-0390240
KE1012026-03-04200290
OZ3302026-03-018080
OZ3302026-03-02100180
OZ3302026-03-0360160
1
ROWS UNBOUNDED PRECEDING
2
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW
3
ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING
4
ROWS BETWEEN CURRENT ROW AND 1 FOLLOWING
해설

합계가 KE101 에서 120, 270, 240, 290 으로 직전 1행과 현재 행만 더하고 OZ330 에서 80부터 다시 시작하므로 1 PRECEDING AND CURRENT ROW 이다.

PARTITION BY 로 편명이 바뀌면 프레임이 새로 시작되어, 각 편의 첫 운항일은 앞 행이 없어 자기 값만 합계가 된다.

  • UNBOUNDED PRECEDING 이면 처음부터 누적해 KE101 셋째 날이 360 이 된다.
  • CURRENT ROW AND 1 FOLLOWING 이면 첫 행이 270 이 되어 결과와 다르다.
  • 1 PRECEDING AND 1 FOLLOWING 이면 둘째 날이 360 이 되어 결과와 다르다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 4회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기