Pierwszy link kwotowane daje:
INNER JOIN
: zwraca wiersze kiedy jest mecz w obu tabelach.
LEFT JOIN/LEFT OUTER JOIN
: zwraca wszystkie wiersze z lewej tabeli, nawet jeśli nie ma odpowiedników w prawej tabeli.
RIGHT JOIN/RIGHT OUTER JOIN
: zwraca wszystkie wiersze z prawej tabeli, nawet jeśli nie ma dopasowań w lewej tabeli.
FULL JOIN/FULL OUTER JOIN/OUTER JOIN
: zwraca wiersze, gdy występuje dopasowanie w jednej z tabel.
SELF JOIN
: służy do łączenia tabeli ze sobą, tak jakby tabela była dwiema tabelami, tymczasowo zmieniając nazwę co najmniej jednej tabeli w instrukcji SQL.
CARTESIAN JOIN
: zwraca iloczyn kartezjański zbiorów rekordów z dwóch lub więcej połączonych tabel.
Numer self join
nie jest w rzeczywistości special join
. Po prostu odzwierciedla fakt, że możesz dołączyć do stołu ze sobą. Powinieneś to zrobić alias, aby uwzględnić fakt, że pojawia się więcej niż jeden raz w tym samym komunikacie.
Urządzenie cartesian join
można uznać za inner join
bez warunków ograniczających. Lub możesz zobaczyć inner join
jako cartesian join
z dodatkowym ograniczeniem (warunek łączenia).
Są takie same. – EmCo
'LEFT JOIN' jest tym samym, co' LEFT OUTER JOIN'. Słowo kluczowe "OUTER" jest * opcjonalne *. –
@JW. Widziałem link, który zasugerowałeś. Jest bardzo użyteczny. Ale wciąż nie spełniał wszystkich moich wątpliwości. http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html – PSR