Analytické funkce (Transact-SQL)

Platí na:SQL ServerAzureSQL DatabaseAzureSQL Managed InstanceAzureSynapse Analytics Azure SQL Edge SQL analytics endpoint in Microsoft FabricWarehousev Microsoft FabricSQLdatabázi v Microsoft Fabric

Analytické funkce vypočítají agregovanou hodnotu na základě skupiny řádků. Na rozdíl od agregovaných funkcí však analytické funkce mohou vracet více řádků pro každou skupinu. Použijte analytické funkce k výpočtu klouzavých průměrů, běžných součtů, procent nebo výsledků s top N v rámci skupiny.

Microsoft SQL Database Engine poskytuje následující analytické funkce na některých nebo všech platformách. Podívejte se na každý syntaktický článek pro příslušné platformy.

  • ANY_VALUE - Vrací libovolnou nehodnotuNULL ze skupiny řádků, nebo NULL pokud všechny hodnoty jsou NULL.
  • APPROX_MEDIAN - Vrátí přibližnou mediánovou hodnotu pro množinu hodnot.
  • APPROX_QUANTILE - Vrátí přibližnou kvantilovou hodnotu pro určenou kvantilovou pozici.
  • CUME_DIST - Vypočítá kumulativní rozdělení hodnoty v rámci skupiny hodnot.
  • FIRST_VALUE - Vrátí první hodnotu v uspořádané množině hodnot.
  • LAG - Vrací hodnotu z předchozího řádku ve stejné množině výsledků bez nutnosti self-join.
  • LAST_VALUE - Vrátí poslední hodnotu v uspořádané sadě hodnot.
  • LEAD - Vrací hodnotu z následujícího řádku ve stejné sadě výsledků bez nutnosti samo-připojení.
  • MEDIÁN - Vrátí medián hodnoty ve skupině.
  • PERCENT_RANK - Vypočítá relativní hodnost řádku v rámci skupiny řádků.
  • PERCENTILE_CONT - Vypočítá percentil na základě spojitého rozdělení, interpoluje výsledek, který nemusí být v dané skupině rovn.
  • PERCENTILE_DISC - Vypočítá percentil na základě diskrétního rozdělení, čímž vrací hodnotu ze skupiny.
  • KVANTIL - Vrátí hodnotu odpovídající určenému kvantilu v rámci skupiny.