INNER JOIN / JOIN
Spojení pouze toho, co mají obě tabulky společné.Příklad
SELECT [názvy sloupců]
FROM Tabulka1
JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
FROM Tabulka1
JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
LEFT OUTER JOIN / LEFT JOIN
Vypíše data, která jsou v levé tabulce + společné.SELECT [názvy sloupců]
FROM Tabulka1
LEFT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
RIGHT OUTER JOIN / RIGHT JOIN
Vypíše data, která jsou v pravé tabulce + společné.SELECT [názvy sloupců]
FROM Tabulka1
RIGHT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
FULL OUTER JOIN / FULL JOIN
Vypíše data, která jsou v levé + pravé tabulce + společné.SELECT [názvy sloupců]
FROM Tabulka1
FULL JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
CROSS JOIN
"Vynásobí" data mezi oběma tabulkami. V levé je 5 záznamů a v pravé jsou 3. Výsledkem je celkem 15 záznamů.
SELECT [názvy sloupců]
FROM Tabulka1
CROSS JOIN Tabulka2
FROM Tabulka1
CROSS JOIN Tabulka2
LEFT JOIN - s příznakem WHERE
Vypíše data, která jsou pouze v levé tabulce a nejsou společná.
SELECT [názvy sloupců]
FROM Tabulka1
LEFT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
FROM Tabulka1
LEFT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
RIGHT JOIN - s příznakem WHERE
Vypíše data, která jsou pouze v pravé tabulce a nejsou společná.
SELECT [názvy sloupců]
FROM Tabulka1
RIGHT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
FROM Tabulka1
RIGHT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
FULL JOIN - s příznakem WHERE
Spojení všeho co je v levé a v pravé tabulce. To co mají společné, se nepřidá.
SELECT [názvy sloupců]
FROM Tabulka1
RIGHT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
OR Tabulka2.Slupec IS NULL
FROM Tabulka1
RIGHT JOIN Tabulka2
ON Tabulka1.Sloupec = Tabulka2.Sloupec
WHERE Tabulka1.Sloupec IS NULL
OR Tabulka2.Slupec IS NULL