十三、表连接

简介: 十三、表连接

一、什么是表连接

表连接(JOIN)是在多个表中间通过一定的连接条件,使表之间发生关联进而能从多个表之间获取数据。简单的表连接语法如下:

SELECT table1.column,table2.column 
FROM table1,table2
WHERE table1.column1=table2.column2;

二、表连接的几种方式

表连接分为内连接、自连接和外连接,其中内连接的关键子是 join inner join ,外连接又分为左连接(left join)、右连接(right join) 和 全外连接(full join)。

三、各种表连接的区别

image.png

各种连接的数据包含范围如下,红色代表包含的数据。

1.png

例如:

1. 有如下两个表 student 和 score

image.png

image.png

查询出所有学生的各科成绩,没有成绩的以null代替

select stu.name,sco.sc from student stu
left join socre sco on stu.stu_no=sco.stu_no;

查询存有分数的学生各科成绩:

select stu.name,sco.sc from student stu
join socre sco on stu.stu_no=sco.stu_no;

TIP:右连接和左连接一样,这里就不举例了。

目录
相关文章
|
5月前
|
SQL 关系型数据库 MySQL
从理论到实践,Mysql查询优化剖析(联表查询)
从理论到实践,Mysql查询优化剖析(联表查询)
205 0
|
3月前
|
SQL 数据挖掘 数据库
SQL 子查询深度剖析来袭!嵌套查询竟有如此无限可能,带你轻松玩转复杂数据检索与操作!
【8月更文挑战第31天】在 SQL 中,子查询是一种强大的工具,允许在一个查询内嵌套另一个查询,从而实现复杂的数据检索和操作。子查询分为标量子查询、列子查询和行子查询,可用于 SELECT、FROM、WHERE 和 HAVING 子句中。例如,查找年龄大于平均年龄的学生或每个课程中成绩最高的学生。子查询具有灵活性、可重用性和潜在的性能优化优势,但需注意性能问题、可读性和数据库支持。合理使用子查询能够显著提升查询效率和代码维护性。
84 0
|
5月前
|
关系型数据库 MySQL 数据库
【Databend】多表联结,你不会还没有掌握吧!
【Databend】多表联结,你不会还没有掌握吧!
54 2
|
6月前
|
SQL 数据可视化 关系型数据库
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
【MySQL-11】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)
|
6月前
|
存储 SQL 关系型数据库
SQL联结表及高级联结
SQL联结表及高级联结
67 0
|
存储 关系型数据库 MySQL
MySQL基础应用拓展、索引及执行计划
MySQL基础应用拓展、索引及执行计划
83 0
MySQL基础应用拓展、索引及执行计划
|
SQL Oracle 关系型数据库
【SQL开发实战技巧】系列(十三):讨论一下常用聚集函数&通过执行计划看sum()over()对员工工资进行累加
本篇文章讲解的主要内容是:***常用聚集函数及group by与空值的影响、详解通过执行计划看sum()over()分析函数。***
【SQL开发实战技巧】系列(十三):讨论一下常用聚集函数&通过执行计划看sum()over()对员工工资进行累加
LeetCode SQL专项练习 (6) 合并&多表查询
LeetCode SQL专项练习 (6) 合并&多表查询
145 0
|
缓存 关系型数据库 MySQL
索引三表优化案例|学习笔记
快速学习索引三表优化案例
索引三表优化案例|学习笔记
LeetCode SQL专项练习 (5) 合并&多表查询
LeetCode SQL专项练习 (5) 合并&多表查询
138 0