SQL Union - Una guida completa sull'operatore UNION



Questo articolo è una guida approfondita su come utilizzare l'operatore SQL UNION. Questo articolo discute le differenze tra UNION e UNION ALL con esempi.

Durante la gestione dei dati nei database, spesso tendiamo a utilizzare gli operatori set in SQL , per recuperare i dati in base ai nostri requisiti combinando due o più istruzioni SELECT. In questo articolo su SQL UNION, parlerò dell'operatore UNION utilizzato per recuperare i dati nella seguente sequenza:

Cominciamo!





Cos'è l'operatore SQL UNION?

Come suggerisce il nome, questo operatore / clausola viene utilizzato per combinare i risultati di due o più istruzioni SELECT. Qui ogni istruzione SELECT utilizzata all'interno dell'istruzione UNION deve avere lo stesso numero di colonne nello stesso ordine. Inoltre, tutte le colonne presenti nelle istruzioni SELECT devono avere tipi di dati simili.

La clausola UNION fornisce solo valori univoci come output. Nel caso in cui desideri valori duplicati, devi usare la clausola UNION ALL.



Andando avanti in questo articolo su SQL UNION, cerchiamo di capire la sintassi.

Sintassi SQL UNION

Sintassi UNION

SELEZIONA Colonna1, Colonna2, Colonna3, ..., ColonnaN DA Tabella1 UNIONE SELEZIONA Colonna1, Colonna2, Colonna3, ..., ColonnaN DA Tabella2

UNION ALL Sintassi

SELEZIONA Colonna1, Colonna2, Colonna3, ..., ColonnaN DA Tabella1 UNIONE TUTTI SELEZIONA Colonna1, Colonna2, Colonna3, ..., ColonnaN DA Tabella2

Andando avanti in questo articolo, cerchiamo di capire le differenze tra UNION e UNION ALL.

Differenze tra SQL UNION e UNION ALL



UNIONE UNION ALL
Combina due o più set di risultati e non mantiene i valori duplicati.Combina due o più set di risultati e mantiene i valori duplicati.
 Sintassi: UNIONE
 Sintassi: UNION ALL
SQL UNION -SQL UNION -Edureka

Successivamente, in questo articolo su SQL UNION, comprendiamo i diversi modi di utilizzare questo operatore.

Esempi di SQL UNION e UNION ALL

Per una migliore comprensione, prenderò in considerazione le seguenti tabelle per mostrarti diversi esempi.

Tabella dei dipendenti

EmpID Nome EmpAge Città Codice postale Nazione
unoEmma2. 3Berlino12109Germania
2Rahul26Mumbai400015India
3Aayra24New York10014USI
4John32LondraE1 7AEUK
5Derek29New York10012USI

Tabella progetti

ProjectID Nome Giorni lavorativi Città Codice postale Nazione
unoProgetto 110Berlino12109Germania
2Progetto 27Mumbai400015India
3Progetto 3ventiDelhi110006India
4Progetto 4quindiciMumbai400015India
5Progetto 528Berlino12109Germania

Cominciamo con degli esempi.

Esempi di SQL UNION

Esempio di operatore UNION

Scrivi una query per recuperare città distinte dalla tabella Dipendenti e progetti.

SELEZIONA Città DA Dipendenti UNIONE SELEZIONA Città DA Progetti ORDINA PER Città

Produzione:

Città

Berlino

Delhi

cosa fa un iteratore in java

Londra

Mumbai

New York

Esempio di operatore UNION ALL

Scrivi una query per recuperare le città dalla tabella Dipendenti e progetti. Qui devono essere inclusi valori duplicati.

SELEZIONA Città DA Dipendenti UNIONE TUTTI SELEZIONA Città DA Progetti ORDINA PER Città

Produzione:

Città

Berlino

Berlino

Berlino

Delhi

Londra

Mumbai

Mumbai

Mumbai

New York

New York

Successivamente in questo articolo, vediamo come utilizzare la clausola UNION con gli alias SQL.

UNION con alias SQL

Vengono utilizzati gli alias SQLper assegnare un nome temporaneo a una tabella o a una colonna. Quindi, scriviamo una query per elencare tutti i dipendenti e i progetti unici.

SELEZIONA 'Dipendente' come tipo, nome, città, paese FROM Dipendenti UNIONE SELEZIONA 'progetto', nome, città, paese FROM progetti

Produzione:

genere Nome Città Nazione
DipendenteEmmaBerlinoGermania
DipendenteRahulMumbaiIndia
DipendenteAayraNew YorkUSI
DipendenteJohnLondraUK
DipendenteDerekNew YorkUSI
ProgettoProgetto 1BerlinoGermania
ProgettoProgetto 2MumbaiIndia
ProgettoProgetto 3DelhiIndia
ProgettoProgetto 4MumbaiIndia
ProgettoProgetto 5BerlinoGermania

UNION con la clausola WHERE

Scrivi una query per recuperare le diverse città indiane e i rispettivi codici postali dalla tabella Dipendenti e Progetti.

SELEZIONA Città, Codice Postale, Paese DA Dipendenti WHERE Paese = 'India' UNIONE SELEZIONA Città, Codice Postale, Paese DA Progetti DOVE Paese = 'India' ORDINA PER Città

Produzione:

Città Codice postale Nazione
Delhi110006India
Mumbai400015India

UNION ALL con la clausola WHERE

Scrivi una query per recuperare le città indiane e i relativi codici postali sia dalla tabella Dipendenti che da quella dei progetti, dove sono consentiti valori duplicati

SELEZIONA città, codice postale, paese FROM Employees WHERE Country = 'India' UNION ALL SELECT City, PostalCode, country FROM progetti WHERE Country = 'India' ORDER BY City

Produzione:

Città Codice postale Nazione
Delhi110006India
Mumbai400015India
Mumbai400015India
Mumbai400015India

Andando avanti in questo articolo, cerchiamo di capire come utilizzare le clausole UNION e UNION ALL con JOINS.I JOINS in SQL sono che vengono utilizzati per combinare righe di due o più tabelle, in base a una colonna correlata tra quelle tabelle.

trova il numero massimo nell'array java

UNION con JOINS

L'operatore SQL UNION può essere utilizzato con per recuperare i dati da due diverse tabelle. Prenderò in considerazione la seguente tabella insieme alla tabella Employees per l'esempio.

Tabella ProjectDetails

PID Giorni lavorativi EmpID CostforProject
undici12420000
2216335000
3330uno60000
4425345000
55ventunouno50.000
SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION SELEZIONA EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Produzione:

EmpID Nome CostforProject
unoEmma60000
unoEmma50.000
2RahulNULLO
3Aayra35000
3Aayra45000
4John20000
5DerekNULLO

UNION ALL con JOINS

Scrivere una query per recuperare EmpID, Name e CostforProject dalla tabella Employees e ProjectDetails, dove sono consentiti valori duplicati.

SELECT EmpID, Name, CostforProject FROM Employees LEFT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID UNION ALL SELECT EmpID, Name, CostforProject FROM Employees RIGHT JOIN ProjectDetails ON Employees.EmpID = ProjectDetails.EmpID

Produzione:

EmpID Nome CostforProject
unoEmma60000
unoEmma50.000
2RahulNULLO
3Aayra35000
3Aayra45000
4John20000
5DerekNULLO
4John20000
3Aayra35000
unoEmma60000
3Aayra35000
unoEmma50.000

Con questo, arrivo alla fine di questo articolo su SQL UNION. Spero ti sia piaciuto leggere questo articolo su SQL UNION. Abbiamo visto i diversi modi per utilizzare i comandi UNION e UNION ALL per aiutarti a scrivere query. Se desideri saperne di più su MySQL e conosci questo database relazionale open source, quindi dai un'occhiata al nostro che viene fornito con formazione dal vivo con istruttore e esperienza di progetto nella vita reale. Questa formazione ti aiuterà a comprendere MySQL in profondità e ti aiuterà a raggiungere la padronanza dell'argomento.

Hai domande per noi? Per favore menzionalo nella sezione commenti di 'SQL UNION' e ti ricontatterò.