Formazione
Modulo
Usare funzioni predefinite e GROUP BY in Transact-SQL - Training
Usare funzioni predefinite e GROUP BY in Transact-SQL
Questo browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
try_avg
funzione di aggregazione
Si applica a: Databricks SQL
Databricks Runtime 11.3 LTS e versioni successive
Restituisce la media calcolata dai valori di un gruppo. Se è presente un overflow, restituisce NULL.
try_avg( [ALL | DISTINCT] expr) [FILTER ( WHERE cond ) ]
Questa funzione può anche essere richiamata come funzione finestra usando la clausola OVER
.
expr
: espressione che restituisce un valore numerico o di intervallo.cond
: espressione booleana facoltativa che filtra le righe usate per l'aggregazione.Il tipo di risultato viene calcolato come per gli argomenti:
DECIMAL(p, s)
: il tipo di risultato è un oggetto DECIMAL(p + 4, s + 4)
.
Se viene raggiunta la precisione massima per DECIMAL, l'aumento della scala sarà limitato per evitare la perdita di cifre significative.INTERVAL YEAR TO MONTH
.INTERVAL YEAR TO SECOND
.I valori Null all'interno del gruppo vengono ignorati. Se un gruppo è vuoto o è costituito solo da valori Null, il risultato è NULL.
Se DISTINCT
viene specificato, la media viene calcolata dopo la rimozione dei duplicati.
Per generare un errore anziché NULL in caso di overflow, usare avg.
> SELECT try_avg(col) FROM VALUES (1), (2), (3) AS tab(col);
2.0
> SELECT try_avg(DISTINCT col) FROM VALUES (1), (1), (2) AS tab(col);
1.5
> SELECT try_avg(col) FROM VALUES (1), (2), (NULL) AS tab(col);
1.5
> SELECT try_avg(col) FROM VALUES (INTERVAL '1' YEAR), (INTERVAL '2' YEAR) AS tab(col);
1-6
-- Overflow results in NULL for try_avg()
> SELECT try_avg(col) FROM VALUES (5e37::DECIMAL(38, 0)), (5e37::DECIMAL(38, 0)) AS tab(col);
NULL
-- Overflow causes error for avg() in ANSI mode.
> SELECT avg(col) FROM VALUES (5e37::DECIMAL(38, 0)), (5e37::DECIMAL(38, 0)) AS tab(col);
Error: CANNOT_CHANGE_DECIMAL_PRECISION
Formazione
Modulo
Usare funzioni predefinite e GROUP BY in Transact-SQL - Training
Usare funzioni predefinite e GROUP BY in Transact-SQL
Documentazione
Funzione forall - Azure Databricks - Databricks SQL
Informazioni sulla sintassi della funzione forall del linguaggio SQL in Databricks SQL e Databricks Runtime.
funzione di raggruppamento - Azure Databricks - Databricks SQL
Informazioni sulla sintassi della funzione di raggruppamento del linguaggio SQL in Databricks SQL e Databricks Runtime.
PARAMETERS - Azure Databricks - Databricks SQL
Scopri la relazione INFORMATION_SCHEMA.PARAMETERS in Databricks SQL.