📜  SQL 右连接

📅  最后修改于: 2021-09-08 15:20:21             🧑  作者: Mango

SQL中的RIGHT JOIN关键字返回所有匹配的记录(或行)以及出现在右表但不在左表中的记录(或行)。这意味着,如果某行出现在右表中但不在左侧,结果将包括这一行,但在左侧的每一列中都有一个 NULL 值。如果左表中的记录不在右表中,则不会包含在结果中。

右加入

RIGHT JOIN 的语法是:-

SELECT column_name(s) 
FROM tableA 
RIGHT JOIN tableB ON tableA.column_name = tableB.column_name;

SQL 右连接示例:

在此示例中,我们将考虑两个表员工表,其中包含在特定部门工作的员工的详细信息和部门表,其中包含部门的详细信息

员工表:

emp_no emp_name dept_no
E1 Varun Singhal D1
E2 Amrita Aggarwal D2
E3 Ravi Anand D3

部门表:

dept_no d_name location
D1 IT Delhi
D2 HR Hyderabad
D3 Finance Pune
D4 Testing Noida
D5 Marketing Mathura

要对这两个表执行右连接,我们将使用以下 SQL 查询:

select emp_no , emp_name ,d_name, location 
from employee 
right join dept on employee.dept_no = department.dept_no;

我们将得到的输出如下:

emp_no emp_name d_name location
E1 Varun Singhal IT Delhi
E2 Amrita Aggarwal HR Hyderabad
E3 Ravi Anand Finance Pune
[NULL] [NULL] Testing Noida
[NULL] [NULL] Marketing Mathura

由于右连接给出了匹配的行和出现在左表中但不在右表中的行。在这个例子中,我们看到不包含员工的部门在执行后包含 emp_no 和 emp_name 的 [NULL] 值正确加入。