logo

SQL | UŻYWANIE klauzuli

Jeśli kilka kolumn ma takie same nazwy, ale typy danych nie są zgodne, klauzulę NATURAL JOIN można zmodyfikować za pomocą ZA POMOCĄ klauzula określająca kolumny, które powinny być użyte dla EQUIJOIN .

  • Klauzula USING służy do dopasowania tylko jednej kolumny, gdy pasuje więcej niż jedna kolumna.
  • Klauzule NATURAL JOIN i USING wykluczają się wzajemnie.
  • Nie powinien zawierać kwalifikatora (nazwy tabeli lub aliasu) w kolumnach, do których istnieją odniesienia.
  • Funkcja NATURAL JOIN używa do łączenia tabel wszystkich kolumn o pasujących nazwach i typach danych. Klauzuli USING można użyć do określenia tylko tych kolumn, które powinny zostać użyte w przypadku EQUIJOIN.



PRZYKŁADY:

dane wejściowe użytkownika Java

Zastosujemy poniższe polecenia w następujących tabelach podstawowych:

    Tabela pracowników



    przechodzenie przez drzewo binarne w ramach sprzedaży pocztowej

    Tabela wydziałów

    PYTANIE 1: Napisz zapytanie SQL, aby znaleźć lokalizację pracy pracowników. Podaj także odpowiedni identyfikator pracownika i nazwisko?



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

Wyjaśnienie: Pokazany przykład łączy kolumnę DEPARTMENT_ID w kolumnach EMPLOYEES i DEPARTMENTS
tabele, a tym samym pokazuje lokalizację, w której pracuje pracownik.

Zastosujemy poniższe polecenia w następujących tabelach podstawowych:

    Tabela Krajowa

    e przykłady modeli

    Tabela lokalizacji

    PYTANIE 2: Napisz zapytanie SQL, aby znaleźć identyfikator_lokalizacji, adres_ulicy, kod_pocztowy i odpowiednią nazwę kraju?

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

Wyjaśnienie: Pokazany przykład łączy kolumnę COUNTRY_ID w pozycjach LOCATIONS i COUNTRIES
tabele i w ten sposób pokazuje wymagane szczegóły.

UWAGA: Gdy w instrukcji łączenia używamy klauzuli USING, kolumna łączenia nie jest kwalifikowana za pomocą aliasu tabeli. Nie twórz aliasów, nawet jeśli ta sama kolumna jest używana w innym miejscu instrukcji SQL:

jak zamienić string na int

Przykład:

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

Wyjaśnienie: Ponieważ kolumna w klauzuli USING jest ponownie używana w klauzuli WHERE, powoduje to wyświetlenie użytkownikowi błędu.