mean mängdfunktion

Gäller för:check markerad ja Databricks SQL-kontroll markerad ja Databricks Runtime

Returnerar medelvärdet som beräknas från värden för en grupp. Den här funktionen är en synonym för avg aggregate-funktionen.

Syntax

mean ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]

Den här funktionen kan också anropas som en fönsterfunktion med hjälp av OVER -satsen.

Argument

  • expr: Ett uttryck som utvärderas till ett numeriskt uttryck.
  • cond: Ett valfritt booleskt uttryck som filtrerar de rader som används för aggregering.

Returnerar

Resultattypen beräknas som för argumenten:

  • DECIMAL(p, s): Resultattypen är a DECIMAL(p + 4, s + 4). Om den maximala precisionen för DECIMAL uppnås är skalningsökningen begränsad för att undvika förlust av betydande siffror.
  • årsmånadsintervall: Resultatet är en INTERVAL YEAR TO MONTH.
  • dagsintervall: Resultatet är en INTERVAL DAY TO SECOND.
  • I alla andra fall är resultatet en DOUBLE.

Null-värden i gruppen ignoreras. Om en grupp är tom eller bara består av nullvärden är resultatet NULL.

Om DISTINCT anges beräknas medelvärdet när dubbletter har tagits bort.

Varning

Om spark.sql.ansi.enabled är falsei Databricks Runtime returneras NULL ett spill i stället för ett fel.

Exempel

> SELECT mean(col) FROM VALUES (1), (2), (3) AS tab(col);
 2.0

> SELECT mean(DISTINCT col) FROM VALUES (1), (1), (2), (NULL) AS tab(col);
 1.5

> SELECT mean(col) FROM VALUES (1), (2), (NULL) AS tab(col);
 1.5