요약 :이 자습서에서는 SQL Server 사용 방법을 배웁니다. ROW_NUMBER()
함수를 사용하여 결과 집합의 각 행에 순차 정수를 할당합니다.
SQL Server ROW_NUMBER () 함수 소개
ROW_NUMBER()
결과 집합의 파티션 내 각 행에 순차 정수를 할당하는 창 함수입니다. 행 번호는 각 파티션의 첫 번째 행에 대해 1로 시작합니다.
다음은 ROW_NUMBER()
함수의 구문을 보여줍니다.
ROW_NUMBER()
함수의 구문을 자세히 살펴보세요.
PARTITION BY
PARTITION BY
절은 결과 집합을 파티션으로 나눕니다 (행 그룹에 대한 또 다른 용어). ROW_NUMBER()
함수는 각 파티션에 개별적으로 적용되며 각 파티션의 행 번호를 다시 초기화했습니다.
PARTITION BY
절 선택 사항입니다. 건너 뛰면 ROW_NUMBER()
함수가 전체 결과 집합을 단일 파티션으로 취급합니다.
ORDER BY
ORDER BY
절은 결과 집합의 각 파티션 내에서 행의 논리적 순서를 정의합니다. ROW_NUMBER()
함수는 순서를 구분하므로 ORDER BY
절은 필수입니다.
SQL 서버 ROW_NUMBER () 예제
샘플 데이터베이스의 sales.customers
테이블을 사용하여 ROW_NUMBER()
함수를 시연합니다. .
SQL Server 사용 ROW_NUMBER () 결과 집합에 대한 함수
다음 문은 ROW_NUMBER()
를 사용하여 각 고객 행에 일련 번호를 할당합니다.
다음은 출력 :
이 예에서는 PARTITION BY
절을 건너 뛰었으므로 ROW_NUMBER()
는 전체 결과 집합을 단일 파티션으로 처리했습니다.
SQL 사용 파티션을 통한 서버 ROW_NUMBER () 예제
다음 예제는 ROW_NUMBER()
를 사용합니다. 각 고객에게 순차 정수를 할당하는 함수. 도시가 변경되면 번호가 재설정됩니다.
다음 그림은 부분 출력을 보여줍니다.
이 예에서는 PARTITION BY
절을 사용하여 고객을 도시별로 파티션으로 나누었습니다. 행 번호는 도시가 변경 될 때 다시 초기화되었습니다.
페이지 매기기에 SQL Server ROW_NUMBER () 사용
ROW_NUMBER()
함수는 페이지 매김에 유용합니다. 응용 프로그램에서. 예를 들어 각 페이지에 10 개의 행이있는 페이지별로 고객 목록을 표시 할 수 있습니다.
다음 예에서는 ROW_NUMBER()
를 사용하여 11 행의 고객을 반환합니다. 두 번째 페이지 인 20으로 :
출력은 다음과 같습니다.
이 예에서 :
- 먼저 CTE는
ROW_NUMBER()
함수를 사용하여 결과 집합의 모든 행은 순차적 인 정수를 설정합니다. - 둘째, 외부 쿼리는 행 번호가 11에서 20 사이 인 두 번째 페이지의 행을 반환했습니다.
이 자습서에서는 SQL Server ROW_NUMBER()
함수를 사용하여 쿼리 파티션 내의 각 행에 순차 정수를 할당하는 방법을 배웠습니다.