SQL中的JOIN用于将两个或多个表中的行连接起来,以便根据指定的关联条件从这些表中检索相关数据。JOIN的使用方法如下:
INNER JOIN(内连接):返回两个表中匹配的行。语法如下:
SELECT 列名
FROM 表1
INNER JOIN 表2
ON 表1.列 = 表2.列;
LEFT JOIN(左连接):返回左表中的所有行和右表中匹配的行。如果右表中没有匹配的行,则使用NULL填充。语法如下:
SELECT 列名
FROM 表1
LEFT JOIN 表2
ON 表1.列 = 表2.列;
RIGHT JOIN(右连接):返回右表中的所有行和左表中匹配的行。如果左表中没有匹配的行,则使用NULL填充。语法如下:
SELECT 列名
FROM 表1
RIGHT JOIN 表2
ON 表1.列 = 表2.列;
FULL JOIN(全连接):返回左表和右表中的所有行。如果某个表中没有匹配的行,则使用NULL填充。语法如下:
SELECT 列名
FROM 表1
FULL JOIN 表2
ON 表1.列 = 表2.列;
CROSS JOIN(交叉连接):返回两个表的笛卡尔积。即返回左表中的每一行与右表中的每一行的组合。语法如下:
SELECT 列名
FROM 表1
CROSS JOIN 表2;
需要注意的是,在使用JOIN时,需要指定连接条件,即ON子句中的条件。连接条件可以是等值条件,也可以是其他条件(如大于、小于等)。