Modi semplici per unire tre tabelle in SQL (con immagini)

Sommario:

Modi semplici per unire tre tabelle in SQL (con immagini)
Modi semplici per unire tre tabelle in SQL (con immagini)

Video: Modi semplici per unire tre tabelle in SQL (con immagini)

Video: Modi semplici per unire tre tabelle in SQL (con immagini)
Video: Programmare Script per la TASK dei FILI Among Us Autohotkey AHK 2024, Maggio
Anonim

Quando si lavora con le tabelle in SQL, potrebbero verificarsi alcune situazioni in cui è necessario interrogare tre o più tabelle. Puoi unire tre tabelle utilizzando prima un'istruzione join per unire due tabelle per creare una tabella unita temporanea. Quindi usa una seconda istruzione join per unire la terza tabella.

Passi

11227971 1
11227971 1

Passaggio 1. Digitare SELECT seguito dai nomi delle colonne che si desidera interrogare

Digita il nome della colonna da ciascuna delle tre che desideri interrogare. Separare ogni nome di colonna con una virgola. In questo esempio, interrogheremo da tre tabelle denominate "Studenti", "Scuole", "Dettagli"

Ad esempio SELECT student_id, student_name, school_id, school, grade

11227971 2
11227971 2

Passaggio 2. Digitare FROM seguito dal nome della prima tabella

Questo può andare su una riga separata o immediatamente dopo la prima istruzione. Nel nostro esempio digiteremo FROM Students.

11227971 3
11227971 3

Passaggio 3. Digitare un'istruzione join seguita dal nome della seconda tabella

Esistono quattro tipi di istruzioni join che è possibile utilizzare per unire due tabelle. Sono i seguenti:

  • Digita JOIN per fare un unione interna. Ciò restituisce i record che hanno valori corrispondenti in entrambe le tabelle. Ad esempio FROM Students JOIN Dettagli.
  • Digita LEFT JOIN per fare un Giunto esterno sinistro. Restituisce tutti i record della tabella di sinistra e i valori corrispondenti della tabella di destra. Ad esempio FROM Students LEFT JOIN Dettagli.
  • Digita RIGHT JOIN per fare a Giunto esterno destro. Restituisce tutti i record della tabella di destra e i valori corrispondenti della tabella di sinistra. Ad esempio FROM Students RIGHT JOIN Dettagli.
  • Digita FULL JOIN per fare un Full Outer Join. Ciò restituisce tutti i record di entrambe le tabelle. Ad esempio FROM Students FULL JOIN Dettagli.
11227971 4
11227971 4

Passaggio 4. Digitare un'istruzione "ON" per le tabelle e le colonne vengono unite

La sintassi per questa istruzione è "ON table_1.primary_key = table_2.foreign_key". "Table_1" è il nome della prima tabella a cui ti stai unendo e "primary_key" è il nome della colonna principale nella prima tabella. "Table_2" è il nome della seconda tabella e "foreign_key" è un nome di colonna della seconda tabella che corrisponde alla colonna principale della prima tabella.

  • Nel nostro esempio, "Students" è la prima tabella e "student_id" è la chiave primaria della tabella Studenti, che si trova anche nella tabella Dettagli. Quindi dovremmo digitare ON Students.student_id = Details.student_id. Questo unisce la tabella Studenti con la tabella Dettagli utilizzando "student_id" come chiave primaria.
  • In alternativa, se la colonna student_name è nella tabella "Dettagli", puoi visualizzare la colonna student_name al posto del campo student_id digitando ON Students.student_id = Details.student_name.
11227971 5
11227971 5

Passaggio 5. Digitare un'istruzione join seguita dal nome della terza tabella

Può trovarsi su una riga separata o immediatamente dopo l'istruzione "ON" che ha unito le prime due tabelle. Puoi utilizzare una qualsiasi delle quattro istruzioni join.

Nel nostro esempio, digiteremo JOIN Schools

11227971 6
11227971 6

Passaggio 6. Digitare un'istruzione "ON" che indichi quali tabelle e colonne verranno unite

La sintassi per il terzo join è "ON table_3.primary_key = table_1.foreign_key". "Tabella 1". "Table_3 è il nome della terza tabella. Questo aggiunge la tabella tre al join finale utilizzando il nome della colonna primaria della terza tabella e la chiave esterna della prima tabella. Nel nostro esempio, digiteremo ON Schools.student_id = Students.student_id. L'intera istruzione join dovrebbe essere simile a questa:

    SELECT student_id, student_name, school_id, school, grade FROM Students FULL JOIN Dettagli ON Students.student_id = Details.student_id ISCRIVITI Schools ON Schools.student_id = Students.student_id

Consigliato: