SQL si unisce usando dove o via

SQL si unisce usando dove o via

In mysql, il "GIUNTURA"La clausola viene utilizzata per unirsi a tabelle diverse. IL "SU"La clausola nell'istruzione join definisce una condizione di join. Mentre il "DOVE"La clausola filtra i dati delle tabelle di unione in base a una particolare condizione. Gli utenti possono utilizzare il "SU" E "DOVE"Clausole con operatori logici per integrare più condizioni contemporaneamente.

Questo post discuterà dell'uso di clausole "dove" e "on" per unire le tabelle in mysql.

Metodo 1: SQL si unisce alla clausola "on"

La clausola "On" in MySQL consente di definire una condizione durante l'adesione delle tabelle usando la clausola "join". La sintassi è riportata di seguito:

SELEZIONARE *
Da [Table1-Name]
Iscriviti [Table2-Name]
A condizione];


Esempio 1: si unisce a Utilizzo della clausola

Consideriamo il codice seguente che si unisce a due tabelle usando "SU"Clausola:

SELEZIONARE *
Dal programma
Unisciti a UserData
In orario.day = userData.giorno libero;


Le tabelle selezionate saranno unite in base al "giorno" E "giorno libero"Colonne specificate con il"SU"Clausola.

Produzione


L'output ha mostrato che le tabelle erano state unite in base alla condizione particolare.

Esempio 2: SQL si unisce utilizzando la clausola "on" con gli operatori logici

In Mysql, gli operatori logici possono essere utilizzati con il “SU"Clausola per unire le tabelle in base a più condizioni. Vediamo un esempio:

SELEZIONARE *
Dall'utente
Unisciti al campione
Sull'utente.id = campione.id e (campione.città = 'madrid' o campione.Paese = 'Messico');


Nel codice precedente gli operatori logici vengono utilizzati all'interno della clausola on per definire i criteri di giunzione della tabella. Le tabelle fornite saranno unite in base alle seguenti condizioni:

    • Condizione 1: gli ID devono essere gli stessi in entrambe le tabelle.
    • Condizione 2: nel “campione"Tavolo, o la città è"Madrid"O il paese è"Messico".

Produzione


L'output ha mostrato che la tabella "utente" E "campione"Sono stati uniti in base alle condizioni specifiche.

Metodo 2: SQL si unisce utilizzando la clausola "dove"

In mysql, il "DOVE"La clausola estrae i risultati in base a determinate condizioni. Può essere usato con il “GIUNTURA"Clausola per unire più di una tabella in base a una condizione particolare. La sintassi è riportata di seguito:

SELEZIONARE *
Da [Table1-Name]
Iscriviti [Table2-Name]
Dove [condizione];


Esempio 1: tabelle di giunzione in base a una condizione specifica

Quello che segue è un esempio di unire due tabelle usando il "DOVE"Clausola e SQL"GIUNTURA"Clausola:

SELEZIONARE *
Dal programma
Unisciti a UserData
Dove programma.day = userData.giorno libero;


Nel codice sopra,

    • IL "GIUNTURA"È usato per unirsi al"programma" E "dati utente"Tabelle.
    • IL "DOVE"La clausola filtra i dati della tabella in base al"giorno" E "giorno libero"Colonne.
    • La tabella risultante recupererà solo quei record che sono comuni in entrambe le colonne delle tabelle mirate:

Produzione


L'output ha mostrato che le tabelle erano state unite in base alla condizione specificata.

Esempio 2: tabelle unite in base a più condizioni

IL "DOVE"La clausola può essere utilizzata con l'operatore logico per unire le tabelle in base a più condizioni:

SELEZIONARE *
Dal programma
Unisciti a UserData
Dove programma.day = userData.dayoff e (programma.Id = userData.ID);


Nell'esempio sopra, sono specificate più condizioni in "DOVE"Clausola utilizzando l'operatore logico (e). Se entrambe le condizioni vengono valutate come "VERO", Quindi il record specifico verrà restituito.

Produzione


L'output dimostra che due tabelle sono state unite in più condizioni (i.e., Entrambi i tavoli ' id E giorno, giorno libero le colonne avevano gli stessi valori).

Metodo 3: SQL si unisce a clausole "on" e "dove"

Mentre si uniscono i tavoli in Mysql, "DOVE" E "SU"Le clausole possono essere usate insieme. Per dimostrarlo, considera i seguenti esempi.

Esempio 1: usando una combinazione di clausola "ON" e "Where"

Questo esempio usa le clausole "on" e "dove" per unirsi al "DIPENDENTE" E "CAMPIONE"Tabelle basate su più condizioni:

Seleziona dipendente.Id, dipendente.ContactName, dipendente.Città, campione.Id, campione.Nome di battesimo,
campione.Città
Dal dipendente
Unisciti al campione sul campione.Id = dipendente.ID
Dove dipendente.City = 'London';


Nell'esempio sopra:

    • IL "SU"La clausola viene utilizzata per unire due tabelle in base al loro IDS.
    • IL "DOVE"La clausola filtra il risultato secondo il città colonna del DIPENDENTE tavolo.

Produzione


L'output ha visualizzato che le tabelle erano state unite in base alle condizioni specificate.

Esempio 2: usando una combinazione di "on" e "dove" con l'operatore logico

Impariamo come unire diverse tabelle in base a più condizioni utilizzando operatori logici con ON e dove le clausole:

SELEZIONARE *
Dall'utente
Unisciti al campione
Sull'utente.id = campione.id
Dove campione.città = 'madrid' o campione.Paese = 'Messico';


Nell'esempio sopra:

    • IL "SU"La clausola si unisce ai tavoli indicati in base al loro IDS.
    • Nel DOVE clausola, il logico o l'operatore viene utilizzato per filtrare il risultato secondo il città O Paese Di DIPENDENTE tavolo.

Produzione


L'output di cui sopra ha mostrato che le tabelle erano state unite rispetto alle condizioni descritte.

Esempio 3: usando la combinazione di ON e dove con il join a sinistra

IL "Sinistra uni"Restituisce tutti i record della tabella sinistra e solo i record corrispondenti/corrispondenti della tabella destra. Può essere usato con entrambi "SU" E "DOVE"Clausole durante unione di tavoli:

Seleziona dipendente.Id, dipendente.ContactName, dipendente.Città, campione.Id, campione.Nome di battesimo,
campione.Città
Dal dipendente
Sinistra un campione sul campione.Id = dipendente.ID
Dove dipendente.City = 'London';


Produzione


L'output ha mostrato che la tabella sinistra ha tutti i record ma la tabella destra ha solo record corrispondenti.

Conclusione

In MySQL, le tabelle possono essere unite utilizzando la clausola di join. UN "DOVEClausola ", una"SU"Clausola, o entrambe le clausole" dove "e" on "possono essere utilizzate per unire le tabelle in base a condizioni particolari. La clausola "on" nell'istruzione join definisce una condizione di join. Mentre la clausola "dove" filtra i dati delle tabelle di unione in base a una determinata condizione. Questo post ha presentato una guida completa sulle tabelle di unire le clausole "on" o "dove".