logo

SQL | KÄYTTÖlause

Jos useilla sarakkeilla on samat nimet, mutta tietotyypit eivät täsmää, NATURAL JOIN -lausetta voidaan muokata KÄYTTÖ lauseke, joka määrittää sarakkeet, joita tulee käyttää EQUIJOIN:issa.

  • KÄYTTÖ-lausetta käytetään vastaamaan vain yhtä saraketta, kun useampi kuin yksi sarake vastaa.
  • NATURAL JOIN ja KÄYTTÖlauseke ovat toisensa poissulkevia.
  • Sillä ei saa olla tarkennetta (taulukon nimi tai alias) viitatuissa sarakkeissa.
  • NATURAL JOIN käyttää kaikkia sarakkeita, joiden nimet ja tietotyypit vastaavat taulukoiden yhdistämiseen. USING-lausetta voidaan käyttää määrittämään vain ne sarakkeet, joita tulee käyttää EQUIJOINissa.



ESIMERKKEJÄ:

kartta java iteraattori

Käytämme alla mainittuja komentoja seuraavissa perustaulukoissa:

    Työntekijätaulukko



    Osastotaulukko

    kuinka lukea csv-tiedostosta javassa

    KYSYMYS 1: Kirjoita SQL-kysely löytääksesi työntekijöiden työpaikan. Anna myös heidän työntekijän_tunnus ja sukunimi?



     Input : SELECT e.EMPLOYEE_ID, e.LAST_NAME, d.LOCATION_ID FROM Employees e JOIN Departments d USING(DEPARTMENT_ID); Output :>

Selitys: Näytetty esimerkki liittyy TYÖNTEKIJÄT ja OSASTO-sarakkeeseen DEPARTMENT_ID
taulukoita ja näyttää siten paikan, jossa työntekijä työskentelee.

Käytämme alla mainittuja komentoja seuraavissa perustaulukoissa:

    Maataulukko

    suorituksenaikainen virhe

    Sijaintitaulukko

    KYSYMYS 2: Kirjoita SQL-kysely löytääksesi sijainnin_id, street_address, postal_code ja vastaavan maan nimen?

     Input : SELECT l.location_id, l.street_address, l.postal_code, c.country_name FROM locations l JOIN countries c USING(country_id); Output :>

Selitys: Esitetty esimerkki liittyy COUNTRY_ID-sarakkeeseen kohteissa LOCATIONS ja COUNTRIES
taulukoita ja näyttää siten tarvittavat tiedot.

HUOMAUTUS: Kun käytämme liitoskäskyssä USING-lausetta, liitossaraketta ei ole määritelty taulukon Alias ​​kanssa. Älä käytä aliasta, vaikka samaa saraketta käytettäisiin muualla SQL-käskyssä:

komento node js:ssä

Esimerkki:

     Input: SELECT l.location_id, l.street_address, l.postal_code, c.country_name FROM locations l JOIN countries c USING(country_id) WHERE c.country_id'IT'; Output:>

Selitys: Koska USING-lauseen saraketta käytetään uudelleen WHERE-lauseessa, se aiheuttaa virheen käyttäjälle.