Analytiska funktioner (Transact-SQL)

Gäller för:SQL ServerAzureSQL DatabaseAzureSQL Managed InstanceAzureSynapse Analytics Azure SQL Edge SQL Analytics endpoint in Microsoft FabricWarehousei MicrosoftFabricSQL-databasen i Microsoft Fabric

Analytiska funktioner beräknar ett aggregerat värde baserat på en grupp rader. Till skillnad från aggregerade funktioner kan dock analytiska funktioner returnera flera rader för varje grupp. Använd analytiska funktioner för att beräkna glidande medelvärden, löpande totaler, procentsatser eller topp-N resultat inom en grupp.

Microsoft SQL Database Engine tillhandahåller följande analytiska funktioner på vissa eller alla plattformar. Se varje syntaxartikel för tillämpliga plattformar.

  • ANY_VALUE - Returnerar alla icke-värdenNULL från en grupp rader, eller NULL om alla värden är NULL.
  • APPROX_MEDIAN - Returnerar ett ungefärligt medianvärde för en uppsättning värden.
  • APPROX_QUANTILE - Returnerar ett ungefärligt kvantilvärde för en specificerad kvantilposition.
  • CUME_DIST - Beräknar den kumulativa fördelningen av ett värde inom en grupp av värden.
  • FIRST_VALUE - Returnerar det första värdet i en ordnad mängd värden.
  • LAG - Returnerar ett värde från en tidigare rad i samma resultatmängd utan att kräva en själv-join.
  • LAST_VALUE - Returnerar det sista värdet i en ordnad uppsättning värden.
  • LEAD - Returnerar ett värde från en efterföljande rad i samma resultatmängd utan att kräva en själv-join.
  • MEDIAN - Returnerar medianvärdet av värdena i en grupp.
  • PERCENT_RANK - Beräknar den relativa rangen för en rad inom en grupp av rader.
  • PERCENTILE_CONT - Beräknar en percentil baserat på en kontinuerlig fördelning och interpolerar ett resultat som kanske inte motsvarar ett värde i gruppen.
  • PERCENTILE_DISC - Beräknar en percentil baserat på en diskret fördelning, vilket ger ett värde från gruppen.
  • QUANTILE - Returnerar värdet som motsvarar en specificerad kvtil inom en grupp.