row_number()
적용 대상: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
serialize된 행 집합에서 현재 행의 인덱스 값을 반환합니다.
행 인덱스는 기본적으로 첫 번째 행에 1
대해 시작되며 각 추가 행에 대해 1
증가합니다.
필요에 따라 행 인덱스가 다른 값 1
으로 시작할 수 있습니다.
또한 일부 제공된 조건자에서 행 인덱스가 다시 설정될 수 있습니다.
구문
row_number(
[StartingIndex [,
Restart]] )
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
StartingIndex | long |
시작하거나 다시 시작할 행 인덱스의 값입니다. 기본값은 1입니다. | |
restart | bool |
번호 매기기를 StartingIndex 값으로 다시 시작할 시기를 나타냅니다. 기본값은 false 입니다. |
반품
함수는 현재 행의 행 인덱스 형식의 값으로 반환합니다 long
.
예제
다음 예제에서는 두 개의 열이 있는 테이블을 반환하고, 첫 번째 열(a
)에는 숫자가 아래쪽에서 10
아래로 1
, 두 번째 열(rn
)은 다음까지 1
의 숫자를 반환합니다 10
.
range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number()
다음 예제는 위와 비슷하며 두 번째 열(rn
)만 다음 위치에서 7
시작합니다.
range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number(7)
마지막 예제에서는 데이터를 분할하고 각 파티션당 행의 번호를 매기는 방법을 보여 줍니다. 여기서는 다음을 통해 데이터를 Airport
분할합니다.
datatable (Airport:string, Airline:string, Departures:long)
[
"TLV", "LH", 1,
"TLV", "LY", 100,
"SEA", "LH", 1,
"SEA", "BA", 2,
"SEA", "LY", 0
]
| sort by Airport asc, Departures desc
| extend Rank=row_number(1, prev(Airport) != Airport)
이 쿼리를 실행하면 다음 결과가 생성됩니다.
공항 | 항공사 | 출발 | Rank |
---|---|---|---|
SEA | BA | 2 | 1 |
SEA | LH | 1 | 2 |
SEA | LY | 0 | 3 |
TLV | LY | 100 | 1 |
TLV | LH | 1 | 2 |