-
SQLD 자격검증실전문제 113번 문제<자격증>/[SQLD] 2023. 3. 19. 19:28728x90
113번. 다음중 아래 테이블에서 SQL을 실행할때, 결과로 적절한것은?
[SQL] SELECT 고객번호, 고객명, 매출액, RANK() OVER(ORDER BY 매출액 DESC) AS 순위 FROM ( SELECT A.고객번호 ,MAX(A. 고객명) AS 고객명 ,SUM(B. 매출액) AS 매출액 FROM 고객 A INNER JOIN 월별매출 B ON (A. 고객번호 = B. 고객번호) GROUP BY A. 고객번호 ) ORDER BY RANK;
자세한 코드 설명은 다음과 같습니다.
- 고객 테이블에서는 고객번호(PK)와 고객명 정보가 있습니다.
- 월별매출 테이블에서는 고객번호(PK)와 매출액, 매출월 정보가 있습니다.
- INNER JOIN을 사용하여 두 테이블을 연결합니다. 이 때, ON 절을 사용하여 고객번호를 기준으로 연결합니다.
- GROUP BY를 사용하여 고객별로 매출액을 합산합니다. 이 때, 고객명 정보는 MAX 함수를 사용하여 고객별로 하나의 값만 출력합니다.
- RANK() OVER() 함수를 사용하여 매출액이 높은 순서대로 순위를 매깁니다. 이 때, DESC 키워드를 사용하여 내림차순으로 정렬합니다.
- 출력 결과에서는 고객번호, 고객명, 매출액, 순위 정보를 출력합니다. 이 때, ORDER BY 절을 사용하여 순위 정보를 기준으로 정렬합니다.
정답
728x90728x90'<자격증> > [SQLD]' 카테고리의 다른 글
SQLD 자격검증실전문제 111번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 112번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 114번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 115번 문제 (0) 2023.03.19 SQLD 자격검증실전문제 116번 문제 (0) 2023.03.19