Redshift omtrentlig Perscentile_Disc -funksjon utfører sin beregning basert på kvantesammendragsalgoritmen. Det vil tilnærme persentilen til de gitte inngangsuttrykkene i rekkefølge etter parameter. En kvantesammendragsalgoritme er mye brukt til å håndtere store datasett. Den returnerer verdien på radene som har en liten kumulativ distribusjonsverdi som er lik eller større enn den medfølgende persentilverdien.
Redshift Craximate Perscentile_Disc-funksjonen er en av de beregne nodefunksjonene i Redshift. Derfor returnerer spørringen for omtrentlig persentil feilen hvis spørringen ikke refererer til den brukerdefinerte tabellen eller AWS Redshift-systemdefinerte tabeller.
Den distinkte parameteren støttes ikke i den omtrentlige persentil_disc -funksjonen, og funksjonen gjelder alltid alle verdiene som er gitt til funksjonen selv om det er gjentatte verdier. Også nullverdiene blir ignorert under beregningen.
Syntaks for å bruke den omtrentlige persentil_disc -funksjonen
Syntaksen for å bruke Redshift Craximate Perscentile_Disc -funksjonen er som følger:
Omtrentlig persentil_disc (Persentil
De persentil Parameter i spørringen ovenfor er persentilverdien du ønsker å finne. Den skal være numerisk konstant og den varierer fra 0 til 1. Derfor, hvis du vil finne den 50. persentilen, vil du legge 0.5.
Orden etter uttrykk
De Orden etter uttrykk brukes til å gi rekkefølgen du vil bestille verdiene og deretter beregne persentilen.
Eksempler for å bruke den omtrentlige Perscentile_Disc -funksjonen
La oss nå i denne delen ta noen eksempler for å forstå hvordan den omtrentlige Perscentile_Disc -funksjonen i Redshift fungerer.
I det første eksemplet vil vi bruke den omtrentlige Perscentile_Disc -funksjonen på en tabell som heter tilnærming som vist under. Følgende Redshift -tabellen inneholder bruker -ID og merker oppnådd av brukeren.
Id | Merker |
0 | 10 |
1 | 10 |
2 | 90 |
3 | 40 |
4 | 40 |
5 | 10 |
6 | 20 |
7 | 30 |
8 | 20 |
9 | 25 |
Bruk den 25. persentilen på kolonnen merker av tilnærming Tabell som vil bli bestilt av ID.
Velg merker, omtrentlig persentil_disc (0.25)Den 25. persentilen av merker Kolonne av tilnærming Tabellen vil være som følger:
Merker | Percentile_disc |
10 | 0 |
90 | 2 |
40 | 3 |
20 | 6 |
25 | 9 |
30 | 10 |
La oss nå bruke den 50. persentilen på tabellen ovenfor. For det, bruk følgende spørsmål:
Velg merker, omtrentlig persentil_disc (0.5)Den 50. persentilen av merker Kolonne av tilnærming Tabellen vil være som følger:
Merker | Percentile_disc |
10 | 1 |
90 | 2 |
40 | 3 |
20 | 6 |
25 | 9 |
30 | 10 |
La oss nå prøve å søke om 90. persentilen på samme datasett. For det, bruk følgende spørsmål:
Velg merker, omtrentlig persentil_disc (0.9)Den 90. persentilen av merker Kolonne av tilnærming Tabellen vil være som følger:
Merker | Percentile_disc |
10 | 7 |
90 | 2 |
40 | 4 |
20 | 8 |
25 | 9 |
30 | 10 |
Den numeriske konstanten av persentilparameteren kan ikke overstige 1. La oss nå prøve å overskride verdien og sette den til 2 for å se hvordan den omtrentlige persentil_disc -funksjonen behandler denne konstante. Bruk følgende spørsmål:
Velg merker, omtrentlig persentil_disc (2)Denne spørringen vil kaste følgende feil som viser at persentilen numerisk konstant bare varierer fra 0 til 1.
Bruke omtrentlig persentil_disc -funksjon på nullverdier
I dette eksemplet vil vi bruke omtrentlig persentil_disc -funksjon på en tabell som heter tilnærming som inkluderer nullverdiene som vist nedenfor:
Alfa | beta |
0 | 0 |
0 | 10 |
1 | 20 |
1 | 90 |
1 | 40 |
2 | 10 |
2 | 20 |
2 | 75 |
2 | 20 |
3 | 25 |
NULL | 40 |
La oss nå søke om den 25. persentilen på dette bordet. For det, bruk følgende spørsmål:
Velg Alpha, Craximate Percentile_Disc (0.25)Den 25. persentilen av alfa Kolonne av tilnærming Tabellen vil være som følger:
Alfa | Percentile_disc |
0 | 0 |
1 | 20 |
2 | 10 |
3 | 25 |
4 |
Konklusjon
I denne artikkelen har vi studert hvordan du bruker den omtrentlige Perscentile_Disc -funksjonen i rødforskyvning for å beregne en hvilken som helst persentil av en kolonne. Vi har lært bruken av omtrentlig persentil_disc -funksjon på forskjellige datasett med forskjellige persentil numeriske konstanter. Vi har lært hvordan vi bruker forskjellige parametere mens du bruker den omtrentlige Perscentile_Disc -funksjonen og hvordan denne funksjonen behandler når en persentilkonstant på mer enn 1 blir bestått.