logo

SQL | UPORABNA klavzula

Če ima več stolpcev enaka imena, vendar se podatkovni tipi ne ujemajo, lahko klavzulo NATURAL JOIN spremenite z UPORABA klavzula za podajanje stolpcev, ki naj se uporabljajo za EQUIJOIN.

  • Stavk USING se uporablja za ujemanje samo enega stolpca, če se ujema več kot en stolpec.
  • NATURAL JOIN in klavzula USING se medsebojno izključujeta.
  • V stolpcih, na katere se sklicujete, ne sme imeti kvalifikatorja (ime tabele ali vzdevek).
  • NATURAL JOIN za združevanje tabel uporabi vse stolpce z ujemajočimi se imeni in tipi podatkov. S klavzulo USING lahko podate samo tiste stolpce, ki naj se uporabljajo za EQUIJOIN.



PRIMERI:

Sree Ramanujan

Spodaj navedene ukaze bomo uporabili na naslednjih osnovnih tabelah:

    Tabela zaposlenih



    odjavite se iz google računa na androidu

    Tabela oddelka

    VPRAŠANJE 1: Napišite poizvedbo SQL, da poiščete delovno lokacijo zaposlenih. Navedite tudi njihov ID in priimek zaposlenega?



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

Pojasnilo: Prikazani primer se pridruži stolpcu DEPARTMENT_ID v EMPLOYEES in DEPARTMENTS
tabel in tako prikaže lokacijo, kjer delavec dela.

Spodaj navedene ukaze bomo uporabili na naslednjih osnovnih tabelah:

    Tabela držav

    binarno iskanje v Javi

    Lokacijska tabela

    VPRAŠANJE 2: Napišite poizvedbo SQL, da poiščete location_id, street_address, postal_code in njihovo ime države?

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

Pojasnilo: Prikazani primer se pridruži stolpcu COUNTRY_ID v LOCATIONS in COUNTRIES
tabele in tako prikazuje zahtevane podrobnosti.

OPOMBA: Ko uporabimo klavzulo USING v stavku združevanja, stolpec združevanja ni kvalificiran z vzdevkom tabele. Ne postavljajte vzdevka, tudi če je isti stolpec uporabljen drugje v stavku SQL:

niz v jsonobject

primer:

     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:>

Pojasnilo: Ker je stolpec v klavzuli USING znova uporabljen v klavzuli WHERE, uporabniku vrže napako.