SELECT column_name(s) FROM table1 INNERJOIN table2 ON table1.column_name=table2.column_name; -- 或。 SELECT column_name(s) FROM table1 JOIN table2 ON table1.column_name=table2.column_name;
注意:INNER JOIN 与 JOIN 是相同的。
LEFT JOIN
LEFT JOIN 关键字从左表(table1)返回所有的行,即使右表(table2)中没有匹配,如果右表中没有匹配,则结果为 NULL
1 2 3 4 5 6 7 8 9 10
SQLLEFTJOIN 语法。 SELECT column_name(s) FROM table1 LEFTJOIN table2 ON table1.column_name=table2.column_name; -- 或。 SELECT column_name(s) FROM table1 LEFTOUTERJOIN table2 ON table1.column_name=table2.column_name;
注意:在某些数据库中,LEFT JOIN 称为 LEFT OUTER JOIN
RIGHT JOIN
RIGHT JOIN 关键字从右表(table2)返回所有的行,即使左表(table1)中没有匹配,如果左表中没有匹配,则结果为 NULL
1 2 3 4 5 6 7 8 9
SELECT column_name(s) FROM table1 RIGHTJOIN table2 ON table1.column_name=table2.column_name; -- 或。 SELECT column_name(s) FROM table1 RIGHTOUTERJOIN table2 ON table1.column_name=table2.column_name;
注意:在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN
FULL JOIN
FULL OUTER JOIN 关键字只要左表(table1)和右表(table2)其中一个表中存在匹配,则返回行。
FULL OUTER JOIN 关键字结合了 LEFT JOIN 和 RIGHT JOIN 的结果。
SQL FULL OUTER JOIN 语法
1 2 3 4
SELECT column_name(s) FROM table1 FULLOUTERJOIN table2 ON table1.column_name=table2.column_name;