Ga naar hoofdinhoud Ga naar aanvullende inhoud

WRank - scriptfunctie

WRank() evalueert de rijen van een tabel in het load-script en geeft voor elke rij de relatieve positie van de waarde van het veld weer die in het load-script wordt geëvalueerd. Bij het evalueren van de tabel vergelijkt de functie het resultaat met het resultaat van de andere rijen die de huidige partitie bevatten en retourneert de rangschikking van de huidige rij binnen het segment.

Partities in een tabel

Een tabel die kolomsegmenten toont

WRank kunnen alleen worden gebruikt in een Window-functie. De Window-functie moet een sorteertype en sorteeruitdrukking omvatten. De rangschikking wordt toegepast op de sorteeruitdrukking.

Syntaxis:  

WRank ([mode[, fmt]])

Retourgegevenstypen: dual

Argumenten:  

Argumenten
Argument Beschrijving
mode Geeft de numerieke representatie aan van het resultaat van de functie (optioneel).
fmt Geeft de tekstrepresentatie aan van het resultaat van de functie (optioneel).
TOTAL

Als de tabel eendimensionaal is of als het script wordt voorafgegaan door de kwalificatie TOTAL, wordt de functie geëvalueerd voor de hele kolom. Als de tabel of het equivalent van de tabel meerdere verticale dimensies heeft, omvat de huidige partitie alleen rijen met dezelfde waarden als de huidige rij in alle dimensiekolommen, met uitzondering van de kolom waarin de laatste dimensie wordt weergegeven in de onderlinge sorteervolgorde van de velden.

De rangorde wordt geretourneerd als een dubbele waarde. Als elke rij een unieke rangschikking heeft, is dit een geheel getal tussen 1 en het aantal rijen in de huidige partitie.

Als meerdere rijen dezelfde rangschikking hebben, kan de tekstuele en numerieke representatie worden bestuurd met de parameters mode en fmt.

mode

Het eerste argument, mode, kan de volgende waarden hebben:

mode-waarden
Waarde Beschrijving
0 (standaard)

Als alle rangnummers in de delende groep lager zijn dan de middenwaarde van de volledige rangschikking, krijgen alle rijen het laagste positienummer in de delende groep.

Als alle rangnummers in de delende groep hoger zijn dan de middenwaarde van de volledige rangschikking, krijgen alle rijen het hoogste rangnummer in de delende groep.

Als rangnummers in de delende groep zowel lager als hoger zijn dan de middenwaarde van de volledige rangschikking, krijgen alle rijen de waarde die overeenkomt met het gemiddelde van het hoogste en laagste rangnummer in de volledige partitie.

1 Laagste rangnummer in alle rijen.
2 Gemiddelde rangnummer in alle rijen.
3 Hoogste rangnummer in alle rijen.
4 Laagste rangnummer in eerste rij, vervolgens opgehoogd met één voor elke rij.
fmt

Het tweede argument, fmt, kan de volgende waarden hebben:

fmt-waarden
Waarde Beschrijving
0 (standaard) Lage waarde - hoge waarde in alle rijen (bijvoorbeeld 3 - 4).
1 Lage waarde in alle rijen.
2 Lage waarde in eerste rij, leeg in alle volgende rijen.

De volgorde van rijen voor mode 4 en fmt 2 wordt bepaald door de laadvolgorde van de tabelvelden.

Voorbeeld: een gerangschikt veld toevoegen

Voorbeeld: een gerangschikt veld toevoegen met fmt voor een resultaat met één cijfer

Voorbeeld: een gerangschikt veld met meerdere partities

Beperkingen

WRank heeft de volgende beperkingen:

  • Als uw fmt-waarde 0 is en u het tekstgedeelte van de dubbele resultaat wilt gebruiken voor WRank, moet u Text() met Window(WRank) gebruiken. Bijvoorbeeld: Text(Window(WRank(0), Unit, 'DESC', Age)) as UnitWRankedByAgeText.

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!