Utilizzo dell'operatore sindacale MySQL

Utilizzo dell'operatore sindacale MySQL
Molti operatori esistono in MySQL per recuperare i dati da più tabelle in base ai requisiti. Uno degli utili operatori MySQL è l'Unione. Viene utilizzato per combinare record da due o più tabelle scrivendo una singola query. Ogni istruzione selezionata utilizzata con l'operatore sindacale deve contenere gli stessi numeri di campi e il tipo di dati di ciascun campo sarà anche lo stesso. Recupera tutti i valori di campi comuni e non comuni di tutte le tabelle menzionate nella query rimuovendo le voci duplicate.

Sintassi:

Seleziona Field1, Field2, ... Fieldn
Dalla tabella 1
[Dove la clausola]
Unione [distinto]
Seleziona Field1, Field2, ... Fieldn
Dalla tabella 2
[Dove cluase];

Qui, la clausola Where e il modificatore distinto sono opzionali. Se si desidera eseguire una query selezionata in base a qualsiasi condizione, esegui la clausola. È menzionato in precedenza che i record duplicati vengano rimossi automaticamente quando si eseguono la query con un operatore sindacale. Quindi usare il modificatore distinto è inutile.

Prerequisito:

È necessario creare il database e le tabelle necessari con alcuni record per conoscere l'uso dell'operatore sindacale. Inizialmente, connettiti con il server di database utilizzando mysql client ed eseguire la seguente istruzione SQL per creare un database denominato 'azienda'.

Creare la società di database;

Selezionare il database corrente eseguendo la seguente istruzione.

Usa la compagnia;

Esegui la seguente istruzione SQL per creare una tabella denominata 'prodotti' di cinque campi (id, nome, modello_no, marchio e prezzo). Qui, 'id'è la chiave principale.

Crea prodotti da tavolo (
Id Int (5) Key primario Auto_Increment non firmato,
Nome varchar (50) non null,
modello_no varchar (50) non null,
Brand Varchar (50) non null,
Price int (5)) motore = innodB;

Esegui la seguente istruzione SQL per creare una tabella denominata 'fornitori ' di quattro campi (id, nome, indirizzo, pro_id). Qui, 'id' è una chiave primaria e pro_id è una chiave straniera.

Crea fornitori di tabelle (
Id Int (6) Key primario Auto_Increment non firmato,
Nome varchar (50) non null,
Indirizzo Varchar (50) non null,
pro_id int (5) non firmato non null,
Foreign Key (Pro_ID) References Products (ID) su Elimina Cascade)
Motore = innodB;

Esegui la seguente istruzione SQL per inserire quattro record in i prodotti tavolo.

Inserire i valori dei prodotti
(Null, "Samsung 42" TV "," TV-78453 "," Samsung ", 500),
(Null, "LG Fright", "FR-9023", "LG", 600)
(Null, "Sony 32" TV "," TV-4523W "," Sony ", 300),
(Null, "Walton Washing Machine", "WM-78kl", "Walton", 255);

Esegui la seguente istruzione SQL per inserire sei record in i fornitori tavolo.

Inserire i valori dei fornitori
(Null, "Rahman Enterprise", "Dhanmondi", 1),
(Null, "ABC Electronics", "Mirpur", 2),
(Null, "Nabila Enterprise", "Mogbazar", 2),
(Null, "Naher Plaza", "Eskaton", 3),
(Null, "Walton Plaza", "Eskaton", 4)
(Null, 'Walton Plaza', 'Dhanmondi', 4);

*** Nota: si presume che il lettore abbia familiarità con le istruzioni SQL per la creazione di un database e una tabella o inserire dati nelle tabelle. Quindi gli screenshot delle dichiarazioni di cui sopra vengono omesse.

Esegui la seguente istruzione SQL per visualizzare i record attuali di i prodotti tavolo.

Seleziona * dai prodotti;

Esegui la seguente istruzione SQL per visualizzare i record attuali di i fornitori tavolo.

Seleziona * dai fornitori;

Qui, il nome del fornitore 'Walton Plaza'esiste in due record. Quando queste due tabelle sono combinate con l'operatore sindacale, verrà generato un valore duplicato ma verrà rimosso automaticamente per impostazione predefinita e non è necessario utilizzare un modificatore distinto.

Uso di un semplice operatore sindacale

La seguente query recupererà i dati di pro_id E nome campi da Fornitori tavolo e id E nome campi da prodotti tavolo.

Seleziona Pro_ID come "ID prodotto", nome come "nome prodotto o nome del fornitore"
Dai fornitori
UNIONE
Seleziona ID come "ID prodotto", nome come "nome prodotto o nome fornitore"
Dai prodotti;

Qui, prodotti La tabella contiene 4 record e Fornitori La tabella contiene 6 record con un record duplicato ('Walton Plaza'). La query sopra restituisce 9 record dopo aver rimosso la voce duplicata. La seguente immagine mostra l'output della query in cui "Walton Plaza" appare per una volta.

Uso dell'unione con singolo dove clausola

L'esempio seguente mostra l'uso dell'operatore sindacale tra due query selezionate in cui la seconda query contiene una condizione dove per cercare tali record da Fornitori Tabella che contiene la parola, "Walton' In il nome campo.

Seleziona ID come "ID prodotto", nome come "nome prodotto o nome fornitore"
Dai prodotti
UNIONE
Seleziona Pro_ID come "ID prodotto", nome come "nome prodotto o nome del fornitore"
Dai fornitori
Dove fornitori.Nome come "%Walton%";

Qui, la prima query selezionata restituirà 4 record da prodotti La tabella e la seconda istruzione selezionata restituiranno 2 record da Fornitori Tabella perché, la parola "Walton'Appare due volte nel' 'nome' campo. I 5 record totali verranno restituiti dopo aver rimosso il duplicato dal set di risultati.

Uso dell'unione con più clausola dove

L'esempio seguente mostra l'uso di un operatore sindacale tra due query selezionate in cui entrambe le query contengono la condizione. La prima query selezionata contiene una condizione dove cercherà quei record prodotti Quali valori di prezzo sono inferiori a 600. La seconda query selezionata contiene la stessa condizione dell'esempio precedente.

Seleziona ID come "ID prodotto", nome come "nome prodotto o nome fornitore"
Dai prodotti
Dove prezzo < 600
UNIONE
Seleziona Pro_ID come "ID prodotto", nome come "nome prodotto o nome del fornitore"
Dai fornitori
Dove fornitori.Nome come "%Walton%";

Qui, 4 record verranno restituiti come output dopo aver rimosso i duplicati.

Uso di unione tutti con la clausola multipla

È mostrato negli esempi precedenti che tutti i record duplicati vengono rimossi dagli operatori dell'Unione per impostazione predefinita. Ma se si desidera recuperare tutti i record senza rimuovere i duplicati, allora è necessario utilizzare All Operator Union. L'uso di Union All Operator è mostrato nella seguente istruzione SQL.

Seleziona ID come "ID prodotto", nome come "nome prodotto o nome fornitore"
Dai prodotti
Dove prezzo < 600
Unione tutto
Seleziona Pro_ID come "ID prodotto", nome come "nome prodotto o nome del fornitore"
Dai fornitori
Dove fornitori.Nome come "%Walton%";

La seguente immagine mostra che il set di risultati restituiti contiene i record duplicati dopo aver eseguito l'istruzione sopra. Qui, 'Walton Plaza ' appare due volte.

Conclusione:

Gli usi degli operatori sindacali nell'istruzione SQL sono spiegati in questo tutorial utilizzando esempi semplici. Spero che i lettori saranno in grado di utilizzare questo operatore correttamente dopo aver letto questo articolo.