SQL
SQL
Join Types
SQL JOIN
Table 1 Table 2
SWIPE
SELECT *
Table 1 Table 2 FROM Table_1;
01 SELECT
FROM
*
Table_2;
Select from two tables
SELECT *
Table 1 Table 2
FROM Table_1 t1
02 INNER
ON t1.id
JOIN
=
Table_2
t2.fk
t2
INNER JOIN
SELECT *
Table 1 Table 2
FROM Table_1 t1
03 LEFT
ON
JOIN
t1.id
Tbale_2
= t2.fk;
t2
LEFT OUTER JOIN
SELECT *
Table 1 Table 2 FROM Table_1 t1
04
RIGHT JOIN Tbale_2 t2
ON t1.id = t2.fk;
RIGHT OUTER JOIN
SELECT *
FROM Table_1 t1
Table 1 Table 2 WHERE EXISTS (SELECT 1
FROM Table_2 t2
05 SEMI JOIN — Similar to INNER JOIN,
WHERE t2.id
);
= t1.fk
with less duplication from Table 2.
SELECT *
FROM Table_1 t1
Table 1 Table 2
WHERE NOT EXISTS (SELECT 1
06 FROM
WHERE
Table_2
t2.id
);
=
t2
t1.fk
ANTI SEMI JOIN
SELECT *
FROM Table_1 t1
Table 1 Table 2 LEFT JOIN Table_2 t2
07
ON t1.id = t2.fk
WHERE t2.fk is null;
LEFT OUTER JOIN with exclusion — replacement for a NOT IN
SELECT *
FROM Table_1 t1
Table 2 Table 2 RIGHT JOIN Table_2 t2
08
ON t1.id = t2.fk
WHERE t2.fk is null;
RIGHT OUTER JOIN with exclusion — replacement for a NOT IN
SELECT *
Table 1 Table 2
FROM Table_1 t1
09 FULL
ON
OUTER
t1.id
JOIN
= t2.fk;
Table_2 t2
FULL OUTER JOIN
SELECT *
Table 1 Table 2 FROM Table_1 t1
CROSS JOIN Table_2 t2;
10 CROSS JOIN, like a FULL OUTER JOIN
with out specifying JOIN condition.
SELECT *
FROM Table_1 t1
Table 1 Table 2 FULL OUTER JOIN Table_2 t2
11
ON t1.id = t2.fk
WHERE t1.id is null
OR t2.fk is null;
FULL OUTER JOIN with exclusion — replacement for a double NOT IN
Table 3
SELECT *
FROM Table_1 t1
INNER JOIN Table_2 t2
12
Table 1 Table 2
ON t1.id = t2.fk
INNER JOIN Table_3 t3
ON t1.id = t3.fk;
Two INNER JOINS
Table 3
SELECT *
FROM Table_1 t1
FULL OUTER JOIN Table_2 t2
13
Table 1 Table 2
ON t1.id = t2.fk
FULL OUTER JOIN Table_3 t3
ON t1.id = t3.fk;
Two FULL OUTER JOINS
SELECT *
Table 3
FROM Table_1 t1
INNER JOIN Table_2 t2
14
ON t1.id = t2.fk
Table 1 Table 2
LEFT OUTER JOIN Table_3 t3
ON t1.id = t3.fk;
INNER JOIN and LEFT OUTER JOIN
SELECT *
Table 3
FROM Table_1 t1
LEFT JOIN Table_2 t2
ON t1.id = t2.fk
15
Table 1 Table 2
LEFT JOIN Table_3 t3
ON t1.id = t3.fk;
Two LEFT OUTER JOINS
Help us reach
50K
15K
Followers
Follow our profile
for more Informative
content
Save it
for later