row_number()

Seri hale getirilmiş bir satır kümesinde geçerli satırın dizinini döndürür.

Satır dizini varsayılan olarak 1 ilk satırda başlar ve her ek satır için artırılır 1 . İsteğe bağlı olarak, satır dizini değerinden farklı bir değerle 1başlayabilir. Ayrıca, satır dizini sağlanan bazı koşula göre sıfırlanabilir.

Syntax

row_number( [StartingIndex [,Restart]] )

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Gerekli Açıklama
StartingIndex long Başlangıç veya yeniden başlatma için satır dizininin değeri. Varsayılan değer 1’dir.
Yeni -den başlatın bool Numaralandırmanın StartingIndex değerine ne zaman yeniden başlatılacaklarını gösterir. Varsayılan değer: false.

Döndürülenler

işlevi, geçerli satırın satır dizinini türünde longbir değer olarak döndürür.

Örnekler

Aşağıdaki örnek, iki sütunlu bir tablo döndürür; ilk sütun (a) aşağıdan 10 öğesine ve 1ikinci sütuna (rn) kadar 10olan sayılar 1 ile :

range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number()

Aşağıdaki örnek yukarıdakine benzer, yalnızca ikinci sütun (rn) konumunda 7başlar:

range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number(7)

Son örnekte, verilerin nasıl bölümlenip her bölüme göre satır numaralarının nasıl numara değiştirebileceği gösterilmektedir. Burada verileri ölçütüne göre Airportbölümleyeceğiz:

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)

Bu sorgu çalıştırılırsa aşağıdaki sonuç oluşturulur:

Havaalanı Havayolu Gidiş Derece
DENİZ BA 2 1
DENİZ LH 1 2
DENİZ LY 0 3
TLV LY 100 1
TLV LH 1 2