Menu
Coddy logo textTech

PARTITION BY 기준

Coddy SQL 여정의 기초 섹션에 포함된 레슨. 72개 중 59번째.

OVER () 절의 또 다른 옵션은 PARTITION BY입니다.

각 그룹의 행에 별도로 번호를 매길 수 있습니다 

예를 들어:

idtype
132t1
52t2
92t1
154t3
198t1
SELECT id, type, ROW_NUMBER() OVER (PARTITION BY type ORDER BY id) as row_num
FROM table1

그러면 각 type 내에서 각 항목에 번호를 매기는 열이 생성됩니다.

idtyperow_num
132t11
52t21
92t11
154t31
198t13

id 92는 type t1에서 가장 작은 id이므로 row_num 1을 가집니다.

참고: ROW_NUMBER()는 각 파티션 내에서 행에 번호를 매기는 방식을 결정하기 위해 OVER() 내에 ORDER BY 절이 필요합니다.

PARTITION BY 안에 여러 열을 지정할 수도 있습니다:

ROW_NUMBER() OVER (PARTITION BY type, hue ORDER BY id)
challenge icon

챌린지

쉬움

사용 가능한 테이블과 열:

  • doors: id, publication_year
  • doors_specs: id, country, color

한 공장에서 문을 제작하고 있습니다. publication_year2000보다 작은 문을 countrycolor의 각 조합별로 번호를 매겨야 합니다. 이 열의 이름을 row_num으로 지정하세요.

각 그룹 내에서 문은 id를 기준으로 오름차순으로 번호를 매겨야 합니다. 사양이 없는 문은 무시하세요. 최종 결과는 id를 기준으로 오름차순으로 정렬하세요. 

직접 해보기

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: SQL 플레이그라운드