Den statistiske medianen, eller kort, refererer til en verdi som skiller et sett med verdier i to. Du kan tenke på medianen av mellomverdien i et sett med sorterte verdier i stigende eller synkende rekkefølge.
Medianen indikerer typisk den største eller minste verdien, avhengig av settet som er referert til. For eksempel i et sett med verdier:
100.200.300.400.500.600.700.800.900Medianverdien i ovennevnte sett er 500. Derfor er 500 den fjerde største verdien i det første settet og det fjerde minste i det andre settet.
Denne artikkelen vil lære hvordan du beregner en kolonne i SQL Server. Husk at det ikke er noen spesifikk funksjon å utføre en statistisk median i SQL Server.
Det grunnleggende
La oss starte med det grunnleggende og forstå hvordan vi kan beregne medianen for et sett med verdier.
I statistikk, for å beregne medianen til et sett, starter vi med å ordne verdiene i enten en stigende eller synkende rekkefølge. Når vi har sortert dataene logisk, bestemmer vi mellomverdien.
Hvis settet inneholder et rart antall verdier, vurderer vi mellomverdien medianen til det spesifikke settet.
Imidlertid, hvis settet omfatter et jevnt antall verdier, bestemmer vi de to mellomverdiene i settet, legger dem til og deler med 2.
Vi kan uttrykke formelen for å beregne medianen til et gitt sett som:
KILDE: Wikipedia.
Beregn median i SQL Server
La oss lære å beregne medianen i SQL Server. La oss starte med å sette opp demoinformasjon som vist i spørsmålene nedenfor:
Opprett database:
Opprette databasemedian;Bruk databasen
Bruk median;Lag en tabell med kolonner som vist:
Bruk median;Når vi har prøvedataene, kan vi beregne medianen til de oppgitte dataene.
Metode 1 - SQL -rangering og CTE
Den første metoden vi kan bruke for å beregne medianen av verdier er rangfunksjonen og vanlige tabelluttrykk. Denne metoden fungerer selv i eldre versjoner av SQL Server.
Dette fungerer ved å gruppere settet i 50 prosent høyeste og 50 prosent laveste verdier.
Vi kan bruke dette som vist i eksempelforespørselen nedenfor:
PLUKKE UTDen resulterende verdien er som:
medianMetode 2 - Percentile_cont
Som nevnt, i skrivende stund er det ingen medianfunksjon i SQL Server. Vi kan imidlertid bruke Perscentile_Cont -funksjonen for å oppnå den samme funksjonaliteten.
Funksjonen returnerer verdien rangert til en spesifikk prosent for et definert sett med verdier. Derfor, hvis vi setter prosentverdien til 0.5, vil funksjonen returnere en median verdi.
Tenk på eksemplet på spørringen nedenfor:
Velg produkt, pris, persentil_cont (0.5)Spørringen returnerer utdataene som:
Lær mer om persentil_cont i dokumentasjonen.
Lukking
Denne artikkelen diskuterer den statistiske medianen og forskjellige måter å beregne en kolonnes median i SQL Server.