row_number()
Vrátí index aktuálního řádku v serializované sadě řádků.
Index řádku začíná ve výchozím nastavení 1
na prvním řádku a pro každý další řádek se navyšuje o 1
.
Volitelně může index řádku začínat jinou hodnotou než 1
.
Index řádků se navíc může resetovat podle některých zadaných predikátů.
Syntax
row_number(
[StartingIndex [,
Restart]] )
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Typ | Vyžadováno | Popis |
---|---|---|---|
Počáteční index | long |
Hodnota indexu řádku, na které má začít nebo se má znovu spustit. Výchozí hodnota je 1. | |
Restartujte | bool |
Určuje, kdy má být číslování restartováno na hodnotu StartingIndex . Výchozí formát je false . |
Návraty
Funkce vrátí index řádku aktuálního řádku jako hodnotu typu long
.
Příklady
Následující příklad vrátí tabulku se dvěma sloupci: první sloupec (a
) s čísly od 10
začátku do 1
a druhý sloupec (rn
) s čísly 1
od do 10
:
range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number()
Následující příklad je podobný výše uvedenému, pouze druhý sloupec (rn
) začíná na 7
:
range a from 1 to 10 step 1
| sort by a desc
| extend rn=row_number(7)
Poslední příklad ukazuje, jak lze rozdělit data a očíslovat řádky pro každý oddíl. Tady rozdělíme data podle 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)
Spuštění tohoto dotazu vytvoří následující výsledek:
Letiště | Letecké společnosti | Odlety | Rank |
---|---|---|---|
MOŘE | BA | 2 | 1 |
MOŘE | LH | 1 | 2 |
MOŘE | LY | 0 | 3 |
TLV | LY | 100 | 1 |
TLV | LH | 1 | 2 |
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro