첫 번째 값과 마지막 값 구하기
정렬된 목록에서 첫 번째 값 또는 마지막 값을 반환하는 분석 함수는 쿼리에서 아주 유용하게 쓰여요. 이번 연습에서는 이 함수들에 익숙해지실 거예요. 구문은 다음과 같아요:
FIRST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)LAST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)
스페인과 미국의 모든 유권자를 조회하는 쿼리를 작성해 보세요. 그런 다음 각 국가에서 가장 어린 유권자와 가장 나이 많은 유권자의 생년월일을 가져오는 명령을 쿼리에 추가하세요. 각 행에서 이 값들을 함께 표시해, 각 유권자의 생년월일과 쉽게 비교할 수 있도록 할 거예요.
이 연습은 강의의 일부입니다
SQL Server에서 데이터 조작을 위한 함수
연습 안내
- 각 국가에서 가장 나이 많은 유권자의 생년월일을 조회하세요.
- 각 국가에서 가장 어린 유권자의 생년월일을 조회하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
SELECT
first_name + ' ' + last_name AS name,
country,
birthdate,
-- Retrieve the birthdate of the oldest voter per country
___(birthdate)
OVER (PARTITION BY ___ ORDER BY ___) AS oldest_voter,
-- Retrieve the birthdate of the youngest voter per country
___(___)
OVER (___ country ORDER BY ___ ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
) AS youngest_voter
FROM voters
WHERE country IN ('Spain', 'USA');