Condividi tramite


Procedura: specificare condizioni per i gruppi

Per limitare i gruppi presenti in una query, è possibile specificare una condizione applicabile ai gruppi come insieme, ossia una clausola HAVING.Dopo il raggruppamento e l'aggregazione dei dati, vengono applicate le condizioni nella clausola HAVING.Nella query verranno inseriti solo i gruppi che soddisfano le condizioni.

Può ad esempio essere necessario visualizzare il prezzo medio di tutti i libri di ciascun editore nella tabella titles, ma solo se il prezzo medio è maggiore di 10 dollari.In questo caso, è possibile specificare una clausola HAVING con una condizione quale AVG(price) > 10.

[!NOTA]

In alcuni casi, può essere necessario escludere singole righe dai gruppi prima di applicare una condizione a tutti i gruppi.Per informazioni dettagliate, vedere Procedura: utilizzare clausole HAVING e WHERE nella stessa query.

È possibile creare condizioni complesse per una clausola HAVING utilizzando AND e OR per collegare le condizioni.Per informazioni dettagliate sull'utilizzo degli operatori AND e OR nelle condizioni di ricerca, vedere Procedura: specificare più condizioni di ricerca per una sola colonna.

[!NOTA]

È possibile che le finestre di dialogo e i comandi di menu visualizzati siano diversi da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione del programma.Per modificare le impostazioni, scegliere Importa/esporta impostazioni dal menu Strumenti.Per ulteriori informazioni, vedere Impostazioni di Visual Studio.

Per specificare una condizione per un gruppo

  1. Specificare i gruppi per la query.Per informazioni dettagliate, vedere Procedura: raggruppare righe nei risultati di una query.

  2. Se necessario, aggiungere nel riquadro Criteri la colonna su cui si desidera basare la condizione.In genere la condizione riguarda una colonna che fa già parte di un gruppo o di un riepilogo. Non è possibile utilizzare una colonna che non fa parte di una funzione di aggregazione o della clausola GROUP BY.

  3. Nella colonna Filtro specificare la condizione da applicare al gruppo.

    In Progettazione query e Progettazione visualizzazioni verrà creata automaticamente una clausola HAVING nell'istruzione del riquadro SQL, come nell'esempio seguente:

    SELECT pub_id, AVG(price)
    FROM titles
    GROUP BY pub_id
    HAVING (AVG(price) > 10)
    
  4. Ripetere i passaggi 2 e 3 per tutte le altre condizioni da specificare.

Vedere anche

Attività

Procedura: utilizzare clausole HAVING e WHERE nella stessa query

Altre risorse

Ordinamento e raggruppamento dei risultati delle query