📜  MS SQL Server 中的左连接和右连接

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

先决条件 – MS SQL Server 介绍

1. 左加入:
连接仅组合两个表的集合。当用户只想提取左表的数据时,使用左连接。左连接不仅组合了左表的行,还组合了与右表匹配的行。

句法 –

select select_list 
from table1 left join table2 on join_predicate
                 (OR)
select * 
from table1 right join table2

2. 右加入:
右联接结合了右表的数据和与这两个表匹配的行。

句法 –

select select_list 
from table1 right join table2 on join_predicate
                 (OR)
select * 
from table1 right join table2

例子 –
第一个表是课程表,被认为是左表,第二个表是学生表,被认为是右表。

表 –课程

Name Course Age
Aisha CSE 19
Vani ECE 18
Mina EEE 18

表 –学生

Name Rollno Age
Aisha 111 19
Vani 112 18
Mina 113 18

1. 左加入:
左连接应用于课程表和学生表,下表是结果集。

select name, course 
from c.course left join s.student on c.age = s.age 

Name Course Name Course
Aisha CSE Aisha NULL
Vani ECE Vani NULL
Mina EEE Mina NULL

显示左表和右表对应的匹配行。如果用户只想显示左表中的行,可以在查询中使用where 子句。左连接通常用于最多两个表,但在 SQL Server 的情况下,它也可以用于多个表。 2. 右加入:
右连接应用于课程表和学生表,下表是结果集。

select name, rollno 
from c.course right join s.student on c.age = s.age 

Name Rollno Name Rollno
Aisha 111 Aisha NULL
Vani 112 Vani NULL
Mina 113 Mina NULL

如果表没有公共行,则将行显示为 NULL。右连接也可用于多个表。