Query di Unione in Microsoft Access

Edoardo Midali
Edoardo Midali

Le query di unione in Microsoft Access ti permettono di combinare i risultati di più query o tabelle in un unico insieme di dati. Questo strumento è particolarmente utile quando i dati che desideri analizzare sono distribuiti su più tabelle o query che non possono essere facilmente unite tramite join standard. Questa guida ti mostrerà come creare e utilizzare le query di unione per gestire e analizzare i dati in modo più efficiente.

Cosa Sono le Query di Unione?

Una query di unione combina i risultati di due o più query di selezione in un unico dataset. A differenza delle query di join, che combinano dati da tabelle diverse basandosi su relazioni tra chiavi, le query di unione semplicemente accodano i risultati di più query, a condizione che abbiano lo stesso numero e tipo di colonne.

Vantaggi delle Query di Unione

  • Combinazione di Dati: Permettono di unire risultati da diverse tabelle o query in un’unica visualizzazione.
  • Flessibilità: Utili quando le tabelle o query da unire non sono direttamente correlate tramite chiavi.
  • Efficienza: Ottimo per scenari in cui devi consolidare dati simili provenienti da diverse fonti.

Creazione di una Query di Unione

1. Preparazione delle Query di Selezione

Prima di creare una query di unione, devi avere almeno due query di selezione pronte. Queste query devono avere lo stesso numero e tipo di colonne.

Procedura:

  1. Crea le Query di Selezione: Seleziona i dati che desideri combinare, assicurandoti che le query abbiano colonne compatibili.
  2. Salva le Query: Salva ciascuna query di selezione, poiché le userai per creare la query di unione.

2. Creazione della Query di Unione

La query di unione viene scritta direttamente in SQL, poiché Access non offre una griglia visiva per la creazione di query di unione.

Procedura:

  1. Vai alla Scheda “Crea”: Seleziona “Struttura Query” e chiudi la finestra “Mostra tabella”.
  2. Passa alla Visualizzazione SQL: Clicca su “Visualizzazione SQL” nella barra multifunzione.
  3. Scrivi la Query di Unione: Inserisci la sintassi SQL per la query di unione, utilizzando l’operatore UNION.

3. Sintassi di una Query di Unione

La sintassi di base per una query di unione è:

SELECT colonna1, colonna2, ...
FROM tabella1
UNION
SELECT colonna1, colonna2, ...
FROM tabella2;

4. Esempio di Query di Unione

Supponiamo di avere due tabelle, ClientiOnline e ClientiNegozio, e di voler combinare i nomi e le città dei clienti di entrambe le tabelle.

Esempio SQL:

SELECT Nome, Città
FROM ClientiOnline
UNION
SELECT Nome, Città
FROM ClientiNegozio;

Questo unisce i risultati di entrambe le tabelle in un unico elenco.

5. Esecuzione della Query di Unione

Dopo aver scritto la query di unione, puoi eseguirla per visualizzare i risultati combinati.

Procedura:

  1. Clicca su “Esegui”: Nella visualizzazione SQL, clicca su “Esegui” per eseguire la query.
  2. Visualizza i Risultati: Access mostrerà i risultati della query di unione in una visualizzazione tabellare.

Considerazioni sulle Query di Unione

1. Unicità dei Record

Per impostazione predefinita, UNION restituisce solo record unici. Se desideri includere record duplicati, usa UNION ALL al posto di UNION.

Esempio:

SELECT Nome, Città
FROM ClientiOnline
UNION ALL
SELECT Nome, Città
FROM ClientiNegozio;

2. Ordinamento dei Risultati

Puoi ordinare i risultati della query di unione utilizzando l’istruzione ORDER BY alla fine della query.

Esempio:

SELECT Nome, Città
FROM ClientiOnline
UNION
SELECT Nome, Città
FROM ClientiNegozio
ORDER BY Nome;

3. Gestione delle Incongruenze di Colonne

Assicurati che le query combinate abbiano lo stesso numero di colonne e tipi di dati compatibili. Se necessario, utilizza alias di colonna o funzioni di conversione.

Esempio:

SELECT Nome, Città, 'Online' AS Fonte
FROM ClientiOnline
UNION
SELECT Nome, Città, 'Negozio' AS Fonte
FROM ClientiNegozio;

Salvataggio e Riutilizzo della Query di Unione

Come qualsiasi altra query, puoi salvare una query di unione per un utilizzo futuro.

1. Salvataggio della Query di Unione

Procedura:

  1. Clicca su “Salva”: Dopo aver creato la query di unione, clicca sull’icona del dischetto nella barra multifunzione.
  2. Assegna un Nome: Dai un nome descrittivo alla query, come “Clienti_Combinate”.
  3. Salva la Query: Clicca su “OK” per salvare la query.

2. Modifica della Query di Unione

Puoi sempre modificare una query di unione in visualizzazione SQL per adattarla a nuove esigenze.

Procedura:

  1. Apri la Query: Clicca con il tasto destro sulla query e seleziona “Visualizzazione SQL”.
  2. Apporta le Modifiche: Modifica il codice SQL secondo necessità.
  3. Salva le Modifiche: Salva la query aggiornata.

Esempio Pratico: Unione di Ordini Online e Ordini in Negozio

Scenario:

Immagina di voler combinare gli ordini online e quelli in negozio in un unico report.

Procedura:

  1. Crea Due Query di Selezione: Una per gli ordini online e una per quelli in negozio.
  2. Scrivi la Query di Unione:
SELECT IDOrdine, DataOrdine, Totale, 'Online' AS TipoOrdine
FROM OrdiniOnline
UNION
SELECT IDOrdine, DataOrdine, Totale, 'Negozio' AS TipoOrdine
FROM OrdiniNegozio;
  1. Esegui la Query: Visualizza tutti gli ordini, con l’indicazione del tipo di ordine.
  2. Salva la Query: Salva la query come “Ordini_Combinate”.

Conclusioni

Le query di unione in Microsoft Access sono strumenti essenziali per combinare dati da diverse fonti in un’unica visualizzazione. Comprendere come creare e utilizzare queste query ti permetterà di gestire set di dati complessi in modo più efficiente e di ottenere una visione più completa delle informazioni presenti nel tuo database. Con un po’ di pratica, le query di unione diventeranno uno strumento indispensabile nel tuo arsenale di Access.