复习sql: 内连接,左外连接,右外连接,全外连接,交叉连接

数据表准备 学生表 和 课程表


内连接 join 或 innner join

筛选出满足条件的列,where也可以实现这种功能。

sql 复制代码
SELECT * FROM student JOIN course ON student.student_id = course.stu_id

结果

外连接

左外连接 left join 或者 left outer join

以第一个表为基础,第二个表找不到的项就设置为NULL。

sql 复制代码
SELECT * FROM student LEFT JOIN course ON student.student_id = course.stu_id

结果

右外连接 right join 或者 right outer join

以第二个表为基础,第一个表找不到的项就设置为NULL。

sql 复制代码
SELECT * FROM student RIGHT JOIN course ON student.student_id = course.stu_id

结果

全外连接 full join 或者 full outer join(SQL Server有,MYSQL没有全外连接)

左外连接+右外连接的结果。

交叉连接

表1的每一行都与表2的每一行拼接。(笛卡尔积)

sql 复制代码
SELECT * FROM student RIGHT JOIN course ON student.student_id = course.stu_id

参考链接

通俗易懂的join、left join、right join、full join、cross join

相关推荐
IvorySQL4 小时前
PostgreSQL 技术日报 (3月9日)|EXPLAIN ANALYZE 计时优化与复制语法讨论
数据库·postgresql·开源
用户8307196840826 小时前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
stark张宇8 小时前
MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉
数据库·mysql·架构
倔强的石头_8 小时前
融合数据库架构实践:关系型、JSON与全文检索的“一库多能”深度解析
数据库
星辰员10 小时前
KingbaseES数据库:ksql 命令行用户与权限全攻略,从创建到删除
数据库
华仔啊1 天前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
随风飘的云2 天前
MySQL的慢查询优化解决思路
数据库
IvorySQL2 天前
PostgreSQL 技术日报 (3月7日)|生态更新与内核性能讨论
数据库·postgresql·开源
赵渝强老师2 天前
【赵渝强老师】金仓数据库的数据文件
数据库·国产数据库·kingbase·金仓数据库
随逸1772 天前
《Milvus向量数据库从入门到实战,手把手搭建语义检索系统》
数据库