Oferty pracy dla inżynierów
  • StrefaInzyniera.pl (current)
  • Oferty pracy
  • Automatyka
    • Uprawnienia elektryczne SEP
    • Elektrotechnika
    • Elektronika
    • Automatyka
    • Robotyka
  • Przemysł
    • Przemysł
    • Obróbka metali
    • CAD
    • CATIA
    • Autodesk Inventor
  • IT
    • JAVA
    • C++
    • Sieci
  • Firmy
  • Dla firm
    • Rejestracja - profil firmy
    • Dodaj ofertę pracy - bezpłatnie
    • Publikacja artykułów
    • Kontakt
  • STREFA INŻYNIERA
  • Oferty pracy
  • Automatyka
    • Uprawnienia elektryczne SEP
    • Elektrotechnika
    • Elektroniki
    • Automatyki
    • Robotyka
  • Przemysł
    • Przemysł
    • Obróbka metali
    • CAD
    • CATIA
    • Autodesk Inventor
  • IT
    • JAVA
    • C++
    • Sieci
  • Firmy
  • Dla firm
    • Rejestracja - profil firmy
    • Dodaj ofertę pracy - bezpłatnie
    • Publikacja artykułów
    • Kontakt
  • Logowanie
  • Zaloguj się
Categories SQL

Kolejność tabel w złączeniach zewnętrznych

Stwierdziliśmy wcześniej, że kolejność, w jakiej wymieniane są tabele w złączeniu wewnętrznym, nie jest istotna. Nie można powiedzieć tego samego o złączeniach zewnętrznych. Zarówno w przypadku złączeń lewostronnych, jak i prawostronnych kolejność wymieniania tabel ma znaczenie. Jednakże istnieje w tym zakresie pewna elastyczność w sytuacjach, w których wyliczane są co najmniej trzy tabele. Wówczas kolejność słów kluczowych LEFT (lub RIGHT) JOIN można dowolnie zmieniać.

Spójrzmy jeszcze raz na oryginalną klauzulę FROM z pierwotnej instrukcji SELECT:

FROM Klienci
LEFT JOIN Zamówienia
ON Klienci.IDKlienta = Zamówienia.IDKlienta
LEFT JOIN Zwroty
ON Zamówienia.IDZamówienia = Zwroty.IDZamówienia

Widzieliśmy już, że możemy najpierw wymienić tabelę Zwroty, a na końcu wyszczególnić tabelę Klienci, jeśli tylko zmienimy rodzaj złączenia na prawostronne, tak jak poniżej:

FROM Zwroty
RIGHT JOIN Zamówienia
ON Zamówienia.IDZamówienia = Zwroty.IDZamówienia
RIGHT JOIN Klienci
ON Klienci.IDKlienta = Zamówienia.IDKlienta

Czy jest zatem możliwe wymienienie najpierw tabeli Klienci, potem tabeli Zwroty, a na końcu tabeli Zamówienia? Tak, jeśli zastosujemy w jednej instrukcji SELECT zarówno złączenia zewnętrzne, jak i wewnętrzne i dodamy kilka nawiasów. Poniższy fragment zapytania jest równoznaczny z podanym powyżej:

FROM Klienci
LEFT JOIN (Zwroty
RIGHT JOIN Zamówienia
ON Zamówienia.IDZamówienia = Zwroty.IDZamówienia)
ON Klienci.IDKlienta = Zamówienia.IDKlienta

To, co początkowo wydawało się dość prostą instrukcją, teraz stało się niepotrzebnie skomplikowanym zapytaniem. Powyższy fragment instrukcji prezentujemy tylko po to, by pokazać, jak nie budować złączeń i że należy zwracać uwagę na tego rodzaju zapisy podczas analizy kodu. Radzimy zatem zawsze stosować słowo kluczowe LEFT JOIN i unikać wykorzystywania nawiasów przy tworzeniu złożonych klauzul FROM, w których wymienianych jest wiele tabel.

 

Język SQL. Przyjazny podręcznik. Wydanie II Autor: Larry Rockoff Wydawnictwo: Helion

Zaloguj się aby dodać komentarz

Podobne artykuły

« Złączenia pełneZłączenia prawostronne RIGHT JOIN »

Podziel się ze znajomymi tym artykułem - udostępnij na FB lub wyślij e-maila korzystając z poniższych opcji:

AngielskiTechniczny.edu.pl
Oferty pracy dla inżynierów
Oferty pracy dla inżynierów

Technolog

PIT-RADWAR S.A.
Warszawa, mazowieckie

Automatyk / Programista

HR Partner
Gniezno, wielkopolskie

Technolog tworzyw (proces ekstruzji, technologia wylewania folii)

Atus Group
Sadkowa Góra, gm. Borowa, Podkarpackie, podkarpackie

Technolog tworzyw (proces ekstruzji, technologia wylewania folii)

Atus Group
Sadkowa Góra, gm. Borowa, Podkarpackie, podkarpackie

Brygadzista / Team Leader (instalacje elektryczne) z j. francuskim | DARMOWE ZAKWATEROWANIE I DOJAZD Z/DO FRANCJI |

HR Partner
Radom, mazowieckie
17 000-20 000 zł brutto

Monter instalacji elektrycznych (budownictwo przemysłowe) z j. francuskim | DARMOWE ZAKWATEROWANIE I DOJAZD DO/Z FRANCJI |

HR Partner
Radom, mazowieckie
14 000-17 000 zł brutto

wszystkie oferty
PracaTechniczna.pl

Strefainzyniera.pl - rynek, praca, rozwój - wszystko co ważne dla inżynierów

  • Dla pracodawcy
  • Artykuły
  • Praca
  • Publikacje
  • Popularne stanowiska
  • Offer in English
  • Regulamin
  • Regulamin dla klientów
  • Polityka prywatności
  • Polityka cookies
  • Kontakt

© 2011 - 2021 NetPortal

Mapa strony Letnisko blisko