Funzioni aggregate
Le funzioni aggregate restituiscono un solo valore da un gruppo di record. È possibile usare una funzione aggregata come parte dell'istruzione SELECT
, con il nome di un campo (ad esempio, AVG(STIPENDIO)
) o in combinazione con un'espressione di colonna (ad esempio, AVG(STIPENDIO * 1.07)
).
È possibile far precedere all'espressione di colonna l'operatore DISTINCT
per eliminare i valori duplicati.
COUNT (DISTINCT cognome)
In questo esempio vengono contati solo i valori univoci di cognome.
Funzione aggregata |
Restituisce |
|
Il totale dei valori di un'espressione di un campo numerico. Ad esempio, |
|
La media dei valori di un'espressione di un campo numerico. Ad esempio, |
|
Il numero di valori in qualsiasi espressione campo. Ad esempio, |
|
Il valore massimo in qualsiasi espressione campo. Ad esempio, |
|
Il valore minimo in qualsiasi espressione campo. Ad esempio, |
SELECT SUM (Dati_Vendite.Quantità) AS agg FROM Dati_Vendite
SELECT AVG (Dati_Vendite.Quantità) AS agg FROM Dati_Vendite
SELECT COUNT (Dati_Vendite.Quantità) AS agg FROM Dati_Vendite
SELECT MAX (Dati_Vendite.Quantità) AS agg FROM Dati_Vendite WHERE Dati_vendite.Importo < 3000
SELECT MIN (Dati_Vendite.Quantità) AS agg FROM Dati_Vendite WHERE Dati_Vendite.Importo > 3000
Non è possibile utilizzare una funzione aggregata come argomento per altre funzioni. In caso contrario, il software FileMaker restituisce il codice di errore 8309 ("Espressioni con gruppi non supportate"). Ad esempio, l'istruzione di seguito non è valida perché la funzione aggregata SUM
non può essere utilizzata come argomento per la funzione ROUND
:
SELECT ROUND(SUM(Stipendio), 0) FROM Buste paga
Tuttavia, le funzioni aggregate possono utilizzare funzioni che restituiscono numeri come argomenti. L'istruzione di seguito è valida.
SELECT SUM(ROUND(Stipendio, 0)) FROM Buste paga