Esempio 7 (GROUP, HAVING)

Descrizione della query

Estrarre numero corrente, soma degli importi e numero dei movimenti di tutti i conti correnti i cui movimenti abbiano superato la cifra complessiva di un milione nel corso del gennaio 1999

La query da realizzare

SELECT numero_cc, SUM(importo), count(*)
FROM movimento
WHERE data_mov > 1-1-99 AND data_mov < 31-1-99
GROUP BY numero_cc
HAVING SUM (Importo) > 1.000.000

La struttura della query in Access

Per far apparire la riga relativa al campo Formula fare click con il pulsante destro sulla griglia della finestra e scegliere Totali dal menu.

Il risultato della query

Il codice SQL generato

SELECT Movimento.Numero_cc, Sum(Movimento.Importo) AS SommaDiImporto, Count(*) AS Num_movimenti
FROM Movimento
WHERE (((Movimento.Data_mov)>#1/1/99# And (Movimento.Data_mov)<#1/31/99#))
GROUP BY Movimento.Numero_cc
HAVING (((Sum(Movimento.Importo))>1000000));