当前位置:网站首页 > 技术博客 > 正文

如何区分左外连接,右外连接和全外连接

左连接(Left Join):左连接返回左表中所有的记录,以及

右

表中与左表中记录匹配的记录。如果

右

表中没有与左表匹配的记录,则

右

表的字段值为 NULL。左连接可以用来获取左表中所有记录以及与之关联的

右

表记录。

举例

:

假设有两张表,一张是学生表(students),包

含

学生的姓名和学号;另一张是成绩表(scores),包

含

学号和成绩信息。通过左连接可以查询所有学生及其对应的成绩信息,即使某个学生没有成绩信息。

```sql

SELECT students.name, scores.score

FROM students

LEFT JOIN scores ON students.student_id = scores.student_id;

   右 连接(Right Join): 右 连接返回 右 表中所有的记录,以及左表中与 右 表中记录匹配的记录。如果左表中没有与 右 表匹配的记录,则左表的字段值为 NULL。 右 连接可以用来获取 右 表中所有记录以及与之关联的左表记录。   举例 : 假设有两张表,一张是学生表(students),包 含 学生的姓名和学号;另一张是成绩表(scores),包 含 学号和成绩信息。通过 右 连接可以查询所有成绩及其对应的学生信息,即使某个成绩没有对应的学生信息。  ```sql SELECT students.name, scores.score FROM students RIGHT JOIN scores ON students.student_id = scores.student_id; 

内连接(Inner Join):内连接返回两个表中符合连接条件的记录。只有在左表和

右

表中都存在匹配的记录时,才会返回结果。

举例

:

假设有两张表,一张是学生表(students),包

含

学生的姓名和学号;另一张是课程表(courses),包

含

课程名称和学号。通过内连接可以查询选修了课程的学生及其对应的课程信息。

```sql

SELECT students.name, courses.course_name

FROM students

INNER JOIN courses ON students.student_id = courses.student_id;

   外连接 (Outer Join): 外连接 返回两个表中符合连接条件的记录,同时保留没有匹配的记录。 外连接 分为 左外连接 和 右 外连接 。   左外连接 (Left Outer Join):返回左表中所有的记录,以及 右 表中与左表中记录匹配的记录。如果 右 表中没有与左表匹配的记录,则 右 表的字段值为 NULL。   举例 : 假设有两张表,一张是学生表(students),包 含 学生的姓名和学号;另一张是成绩表(scores),包 含 学号和成绩信息。通过 左外连接 可以查询所有学生及其对应的成绩信息,即使某个学生没有成绩信息。  ```sql SELECT students.name, scores.score FROM students LEFT JOIN scores ON students.student_id = scores.student_id; 

右 外连接

(Right Outer Join):返回

右

表中所有的记录,以及左表中与

右

表中记录匹配的记录。如果左表中没有与

右

表匹配的记录,则左表的字段值为 NULL。

举例

:

假设有两张表,一张是学生表(students),包

含

学生的姓名和学号;另一张是成绩表(scores),包

含

学号和成绩信息。通过

右 外连接

可以查询所有成绩及其对应的学生信息,即使某个成绩没有对应的学生信息。

```sql

SELECT students.name, scores.score

FROM students

RIGHT JOIN scores ON students.student_id = scores.student_id;


                            

版权声明:


相关文章:

  • windows7是什么软件2024-12-03 21:00:59
  • 数据库测试软件2024-12-03 21:00:59
  • 图像滤波器原理及其作用2024-12-03 21:00:59
  • assempde函数2024-12-03 21:00:59
  • utf8mb4_unicode_520_ci2024-12-03 21:00:59
  • 秀动抢票需要刷新吗2024-12-03 21:00:59
  • http请求头怎么写2024-12-03 21:00:59
  • debian怎么换源2024-12-03 21:00:59
  • java语言及网络编程2024-12-03 21:00:59
  • java内部类分别有哪几种2024-12-03 21:00:59