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:
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,
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:
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:
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".