Skills/MsSQL
MSSQL ROW_NUMBER()란?
Homil-Rye
2023. 9. 26. 16:47
728x90
반응형
SQL Server에는 ROW_NUMBER()라는 함수가 있다.
조회한 데이터의 ROW 번호를 매겨주는 것인데, 실무를 하다보면 가끔 필요할 경우가 생긴다.
사용 방법은
ROW_NUMBER() OVER(ORDER BY(정렬조건))
을 사용하면 된다.
ORDER BY 절 안에 정렬 조건을 넣어서, 어떤 기준으로 번호를 매길 지 결정해주자.
아래는 STUDENT 테이블에서 학번으로 ROW_NUMBER를 매기는 쿼리문이다.
SELECT ROW_NUMBER() OVER(ORDER BY (StudentNumber)) AS RowNum
,StudentNumber
FROM Student
만약, 아무 정렬 조건 없이, SELECT했을 때, 보이는 순서대로 번호를 매기고 싶다면,
아래처럼 SELECT 1을 넣어주면 된다.
SELECT ROW_NUMBER() OVER(ORDER BY (SELECT 1)) AS RowNum
,StudentNumber
FROM Student
조금 더 응용한다면,
아래처럼 ClassNumber로 그룹지어서,
반별로 번호를 따로 매길 수도 있다.
SELECT ROW_NUMBER() OVER(PARTITION BY ClassNumber ORDER BY (SELECT 1)) AS RowNum
,StudentNumber
,ClassNumber
FROM Student
728x90
반응형