KQL/Kusto - How to generate row_number similar to SQL

Viewed 69

Here is my data set in kusto and I am trying to generate "releaseRank" column based on the release column value. Input Dataset:

let T = datatable(release:string, metric:long)  
[
"22.05", 20,
"22.04", 40,
"22.03", 50,
"22.01", 560
];
T
|take 100;

desired output : Expected output

found that there is serialize and row_number kusto

T
|serialize 
|extend releaseRank = row_number()
|take 100; 

But if the release value is repeated, i need the releaseRank to be same for eg. given the data set, i am not getting the desired output

T = datatable(release:string, metric:long)  
[
"22.05", 20,
"22.05", 21,
"22.04", 40,
"22.03", 50,
"22.01", 560
];
T
|serialize 
|extend releaseRank = row_number()
|take 100;

expected output enter image description here

1 Answers

This should do what we want.

let T = datatable(release:string, metric:long)  
[
"22.05", 20,
"22.05", 21,
"22.04", 40,
"22.03", 50,
"22.01", 560
];



T
| sort by release desc , metric asc
| extend Rank=row_rank(release)
    22.05   20  1
    22.05   21  1
    22.04   40  2
    22.03   50  3
    22.01   560 4
Related