内连接、左外连接与右外连接的区别及作用介绍

SQL语句当中比较难的部分就有今天要给朋友们分享的这个,inner join, left join 和 right join他们三个的作用以及区别是什么。

顺便也会把交叉连接一起分享了。
上面会分享一些基本的语法与使用,下方会详细介绍

1)交叉连接,又称笛卡尔积
SELECT * FROM tb1 CROSS JOIN tb2;

// 简写
SELECT * FROM tb1,tb2;
2)内连接
// 语法
SELECT some_columns
FROM table1
INNER JOIN table2
ON some conditions;

// 实操:
// 示例:根据学生基本信息登记表tb_student和学生表tb_score,使用内连接查询每个学生及其选课成绩的详细信息。
SELECT * FROM tb_student
INNER JOIN tb_score
ON tb_student.studentNo=tb_score.studentNo;
3)外连接

1、左外连接:在FROM子句中使用关键字LEFT OUTER JOINLEFT JOIN
2、右外连接:在FROM子句中使用关键字 RIGHT OUTER JOINRIGHT JOIN

// 实操:
// 示例:根据学生基本信息登记表tb_student和学生表tb_score,使用内连接查询每个学生及其选课成绩的详细信息。
SELECT * FROM tb_student
LEFT JOIN tb_score
ON tb_student.studentNo=tb_score.studentNo;
4)内连接与外连接的区别是什么?左外连接和右外连接的区别是什么?

内连接和外连接的区别:


内连接:inner join(等值连接) 只返回两个表中联结字段相等的数据


外连接:返回包括左/右表中的所有记录和右/左表中联结字段相等的记录

左外连接和右外连接的区别:


左外连接也称左连接。以左表为基表,在FROM子句中使用关键字“LEFT OUTER JOIN”或关键字“LEFT JOIN”来连接俩张表。


右外连接也称右连接。以右表为基表,在FROM子句中使用关键字“RIGHT OUTER JOIN”或关键字“RIGHT JOIN”来连接俩张表。

白话文:
1.内连接就是取交集的部分。
2.左连接就是左表全部的数据加上交集的数据。
3.右连接就是右表全部的数据加上交集的数据。
4.交叉连接就是全都要!
示例图:
在这里插入图片描述

吴迪软件开发 小程序 ECMAScript 6 React.js
金牛区吴迪软件开发工作室博客