logo

SQL Server의 RANK() 함수

SQL RANK() 함수 에서 사용되는 창 함수입니다. SQL 서버 각 행의 순위를 계산합니다. 결과 세트 .

SQL Server의 RANK 함수

SQL Server의 RANK 함수는 해당 값을 기준으로 각 행에 순위를 할당하는 데 사용됩니다.



동일한 값을 갖는 행에는 동일한 순위가 할당됩니다. 순위는 연속되지 않을 수 있습니다. 순위() 함수 반복된 순위에 반복된 행의 개수를 더해 다음 행의 순위를 계산하기 때문입니다.

통사론

SQL Server에서 RANK 함수를 사용하는 구문은 다음과 같습니다.

순위() 초과(
[PARTITION BY 표현식, ]
ORDER BY 표현식 (ASC | DESC) );



메모:

SQL Server에서 사용되는 다른 순위 함수는 다음과 같습니다.

SQL RANK 함수 예

SQL Server의 RANK 함수의 작동 방식을 이해하기 위해 몇 가지 예를 살펴보겠습니다.



RANK 문을 수행할 데모 테이블을 만들어 보겠습니다. geek_demo 테이블을 생성하려면 다음 쿼리를 작성하세요.

  CREATE TABLE   geek_demo (Name VARCHAR(10) );   INSERT INTO   geek_demo (Name)   VALUES   ('A'), ('B'), ('B'), ('C'), ('C'), ('D'), ('E');   SELECT   *   FROM   sales.geek_demo;>

산출

이름
그리고

이 예에서는 RANK()를 사용하여 geek_demo 테이블의 결과 집합에 있는 행에 순위를 할당합니다.

질문:

  SELECT   Name,    RANK () OVER   (   ORDER BY   Name )   AS   Rank_no    FROM   geek_demo;>

출력 –

이름 순위_번호
1
2
2
4
4
6
그리고 7

SQL RANK 함수에 대한 중요 사항

  • SQL RANK 함수는 SQL Server에서 각 행의 순위를 계산하는 데 사용되는 창 함수입니다.
  • 파티션 내의 각 행에 고유한 순위를 할당하며, 동률이 있는 경우 순위 값에 차이가 있습니다.
  • RANK 함수를 사용하면 지정된 열 또는 열 집합을 기준으로 행의 순위를 지정하여 결과 집합 내에서 명확한 우선 순위를 제공할 수 있습니다.
  • SQL RANK 함수를 사용할 때 ORDER BY 절 , RANK 함수가 적용된 각 파티션의 정렬된 행과 함께 결과 집합이 반환됩니다.
  • 동일한 값을 갖는 행에는 동일한 순위가 할당됩니다.