SQL JOIN (Polski)

Jak uzyskać dane z wielu tabel?

SQL JOIN łączy rekordy z dwóch tabel.
JOIN lokalizuje powiązane wartości kolumn w dwóch tabelach.
Zapytanie może zawierać zero, jedną lub wiele operacji JOIN.
INNER JOIN to to samo, co JOIN; słowo kluczowe INNER jest opcjonalne.

Cztery różne typy JOINów

  1. (INNER) JOIN: Wybierz rekordy które mają pasujące wartości w obu tabelach.
  2. FULL (OUTER) JOIN: Wybiera wszystkie rekordy pasujące do lewego lub prawego rekordu tabeli.
  3. LEFT (OUTER) JOIN: Wybierz rekordy z pierwsza (najbardziej po lewej) tabela z pasującymi rekordami tabeli po prawej stronie.
  4. PRAWA (ZEWNĘTRZNA) JOIN: Wybierz rekordy z drugiej (najbardziej po prawej) tabeli z pasującymi rekordami tabeli po lewej stronie.

Uwaga: wszystkie słowa kluczowe INNER i OUTER są opcjonalne.
Szczegóły dotyczące różnych JOIN są dostępne na kolejnych stronach samouczka.

SQL Składnia JOIN

Ogólna składnia to

SELECT column-names FROM table-name1 JOIN table-name2 ON column-name1 = column-name2 WHERE condition

Ogólna składnia funkcji INNER to:

SELECT column-names FROM table-name1 INNER JOIN table-name2 ON column-name1 = column-name2 WHERE condition

Uwaga: słowo kluczowe INNER jest opcjonalne: jest to domyślna i najczęściej używana operacja JOIN.

CUSTOMER

Id

Firs tName

Nazwisko

Miasto

Kraj

Telefon

ZAMÓWIENIE

Identyfikator

Data zamówienia

Numer zamówienia

Identyfikator klienta

TotalAmount

Przykłady SQL JOIN

Problem: Wymień wszystkie zamówienia z informacjami o klientach

W tym przykładzie użycie aliasów tabeli dla i Klienta może być przydatne.

Wynik: 830 rekordów.
OrderNumber TotalAmount FirstName LastName Miasto Kraj
542378 440,00 Paul Henriot Reims Francja
542379 1863,40 Karin Josephs Münster Niemcy
542380 1813,00 Mario Pontes Rio de Janeiro Brazylia
542381 670.80 Mary Saveley Lyon Francja
542382 3730,00 Pascale Cartrain Charleroi Belgia
542383 1444.80 Mario Pontes Rio de Janeiro Brazylia
542384 625,20 Yang Wang Berno Szwajcaria

PRODUKT

Id

ProductName

Identyfikator dostawcy

Cena jednostkowa

Pakiet

Wycofano

ORDERITEM

Id

OrderId

ProductId

UnitPrice

Ilość

ZAMÓWIENIE

Id

Data zamówienia

Numer zamówienia

CustomerId

TotalAmount

Problem: Lista wszystkich zamówień
z nazwami produktów,
ilości i ceny
To zapytanie wykonuje dwie operacje JOIN z 3 tabelami.
O, I i P są aliasami tabel . Data to alias kolumny.
Wynik: 2155 rekordów

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *