Kun työskentelet taulukoiden kanssa SQL: ssä, voi olla tilanteita, joissa sinun on kysyttävä vähintään kolme taulukkoa. Voit liittää kolme taulukkoa liittämällä ensin liittymislausuman kahden taulukon luomiseen väliaikaisen yhdistetyn taulukon luomiseksi. Liity sitten kolmanteen taulukkoon toisen liittymislausekkeen avulla.
Askeleet
Vaihe 1. Kirjoita SELECT ja sen jälkeen sarakkeiden nimet, joista haluat tehdä kyselyn
Kirjoita sarakkeen nimi jokaisesta kolmesta, josta haluat tehdä kyselyn. Erota kunkin sarakkeen nimi pilkulla. Tässä esimerkissä kyselemme kolmesta taulukosta nimeltä "Opiskelijat", "Koulut", "Tiedot"
Esimerkiksi VALITSE oppilaan_tunnus, oppilaan_nimi, koulun_tunnus, koulu, arvosana
Vaihe 2. Kirjoita FROM ja sen jälkeen ensimmäisen taulukon nimi
Tämä voi mennä erilliselle riville tai heti ensimmäisen lauseen jälkeen. Esimerkissämme kirjoittaisimme FROM Students.
Vaihe 3. Kirjoita liittymislauseke ja toisen taulukon nimi
Liittymislausekkeita voi käyttää neljää eri tyyppiä kahden taulukon yhdistämiseen. Ne ovat seuraavat:
- Kirjoita JOIN tehdäksesi Sisäinen liittyminen. Tämä palauttaa tietueet, joilla on vastaavat arvot molemmissa taulukoissa. Esimerkiksi FROM Students JOIN Details.
- Kirjoita LEFT JOIN tehdäksesi Ulkoinen vasen liitos. Tämä palauttaa kaikki tietueet vasemmasta taulukosta ja vastaavat arvot oikeasta taulukosta. Esimerkiksi oppilailta VASEN LIITY TIEDOT.
- Kirjoita RIGHT JOIN tehdäksesi a Ulkoinen oikea liittymä. Tämä palauttaa kaikki tietueet oikeasta taulukosta ja vastaavat arvot vasemmasta taulukosta. Esimerkiksi Opiskelijoilta OIKEALLE TIETOJA.
- Kirjoita FULL JOIN tehdäksesi a Täysi ulkoinen liittyminen. Tämä palauttaa kaikki tietueet molemmista taulukoista. Esimerkiksi FROM Students FULL JOIN Details.
Vaihe 4. Kirjoita "ON" -lauseke taulukoille ja sarakkeille, joita yhdistetään
Tämän lausekkeen syntaksi on "ON table_1.primary_key = table_2.foreign_key". "Taulukko_1" on ensimmäisen liitettävän taulukon nimi ja "ensisijainen_avain" on ensimmäisen taulukon ensisijainen sarakkeen nimi. "Table_2" on toisen taulukon nimi ja "Foreign_key" on toisen taulukon sarakkeen nimi, joka vastaa ensimmäisen taulukon ensisijaista saraketta.
- Esimerkissämme "Opiskelijat" on ensimmäinen taulukko ja "opiskelijan_tunnus" on ensisijainen avain Oppilaat -taulukosta, joka on myös Tiedot -taulukossa. Joten kirjoittaisimme ON Students.student_id = Details.student_id. Tämä yhdistää Oppilaat -taulukon Tiedot -taulukkoon käyttämällä ensisijaista avainta "opiskelijan_tunnus".
- Vaihtoehtoisesti, jos oppilaan_nimi -sarake on "Tiedot" -taulukossa, voit näyttää oppilaan_nimi -sarakkeen opiskelijan_kentän sijasta kirjoittamalla PÄÄLLÄ opiskelijat.student_id = Tiedot.opiskelijan_nimi.
Vaihe 5. Kirjoita liittymislauseke ja kolmannen taulukon nimi
Tämä voi olla erillisellä rivillä tai heti kahden ensimmäisen taulukon liittäneen "ON" -lausekkeen jälkeen. Voit käyttää mitä tahansa neljästä liittolausekkeesta.
Esimerkissämme kirjoittaisimme JOIN Schools
Vaihe 6. Kirjoita "ON" -käsky, joka osoittaa, mitkä taulukot ja sarakkeet yhdistetään
Kolmannen liitoksen syntaksi on "ON table_3.primary_key = table_1.foreign_key". "Pöytä 1". "Taulukko_3 on kolmannen taulukon nimi. Tämä lisää taulukon kolme lopulliseen liitokseen käyttämällä kolmannen taulukon ensisijaisen sarakkeen nimeä ja ensimmäisen taulukon vieraaa avainta. Esimerkissämme tämä kirjoitetaan ON Schools.student_id = Opiskelijat.student_id. Koko liittymislausuman pitäisi näyttää tältä:
VALITSE opiskelijan_tunnus, oppilaan_nimi, koulun_tunniste, koulu, luokka FROM Oppilaat TÄYDÄN LIITTYMISEN TIEDOT Oppilaat.student_id = Details.student_id LIITY kouluun ON Schools.student_id = Students.student_id