Samouczek SQL

SQL HOME Wprowadzenie do SQL Składnia SQL Wybór SQL SQL Wybierz Wyraźne SQL Gdzie SQL i lub nie Kolejność SQL według SQL Wstaw do Puste wartości SQL Aktualizacja SQL Usuń SQL SQL Wybierz Góra Minimalna i maksymalna wartość SQL Liczba SQL, średnia, suma Polubienie SQL Symbole wieloznaczne SQL SQL In SQL między Aliasy SQL Połączenia SQL Wewnętrzne złącze SQL Połączenie lewe SQL Prawe połączenie SQL Pełne dołączenie do SQL Samoprzyłączanie SQL SQL Union Grupa SQL według Posiadanie SQL SQL istnieje SQL Dowolne, Wszystkie SQL Wybierz do Wstaw SQL do Wybierz Sprawa SQL Funkcje zerowe SQL Procedury składowane w SQL Komentarze SQL Operatory SQL

Baza danych SQL

Tworzenie bazy danych SQL Porzucona baza danych SQL Kopia zapasowa bazy danych SQL Utwórz tabelę SQL Tabela upuszczania SQL Zmień tabelę SQL Ograniczenia SQL SQL nie jest pusty Unikalny SQL Klucz podstawowy SQL Klucz obcy SQL Sprawdzanie SQL Domyślny SQL Indeks SQL Automatyczny przyrost SQL Daty SQL Widoki SQL Wstrzyknięcie SQL Hosting SQL Typy danych SQL

Referencje SQL

Słowa kluczowe SQL Funkcje MySQL Funkcje serwera SQL Funkcje dostępu MS Szybkie odwołanie do SQL

Przykłady SQL

Przykłady SQL Quiz SQL Ćwiczenia SQL Certyfikat SQL

Połączenia SQL


DOŁĄCZ DO SQL

Klauzula JOINsłuży do łączenia wierszy z co najmniej dwóch tabel na podstawie powiązanej między nimi kolumny.

Spójrzmy na wybór z tabeli „Zamówienia”:

OrderID CustomerID OrderDate
10308 2 1996-09-18
10309 37 1996-09-19
10310 77 1996-09-20

Następnie spójrz na wybór z tabeli „Klienci”:

CustomerID CustomerName ContactName Country
1 Alfreds Futterkiste Maria Anders Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Mexico
3 Antonio Moreno Taquería Antonio Moreno Mexico

Zwróć uwagę, że kolumna „CustomerID” w tabeli „Orders” odnosi się do „CustomerID” w tabeli „Customers”. Relacja między dwiema powyższymi tabelami to kolumna „CustomerID”.

Następnie możemy utworzyć następującą instrukcję SQL (zawierającą INNER JOIN), która wybiera rekordy, które mają pasujące wartości w obu tabelach:

Przykład

SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;

i wyprodukuje coś takiego:

OrderID CustomerName OrderDate
10308 Ana Trujillo Emparedados y helados 9/18/1996
10365 Antonio Moreno Taquería 11/27/1996
10383 Around the Horn 12/16/1996
10355 Around the Horn 11/15/1996
10278 Berglunds snabbköp 8/12/1996

Różne typy sprzężeń SQL JOIN

Oto różne typy sprzężeń w SQL:

  • (INNER) JOIN: Zwraca rekordy, które mają pasujące wartości w obu tabelach
  • LEFT (OUTER) JOIN: Zwraca wszystkie rekordy z lewej tabeli i dopasowane rekordy z prawej tabeli
  • RIGHT (OUTER) JOIN: Zwraca wszystkie rekordy z prawej tabeli i dopasowane rekordy z lewej tabeli
  • FULL (OUTER) JOIN: Zwraca wszystkie rekordy, gdy istnieje dopasowanie w lewej lub prawej tabeli

POŁĄCZENIE WEWNĘTRZNE SQL  POŁĄCZENIE LEWE SQL  SQL PRAWY DOŁĄCZ  CAŁKOWITE POŁĄCZENIE ZEWNĘTRZNE SQL


Sprawdź się za pomocą ćwiczeń

Ćwiczenie:

Wstaw brakujące części w JOINklauzuli, aby połączyć dwie tabele Ordersi Customers, używając CustomerIDpola w obu tabelach jako relacji między dwiema tabelami.

SELECT *
FROM Orders
LEFT JOIN Customers
=
;