复习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

相关推荐
qq_5298353528 分钟前
对计算机中缓存的理解和使用Redis作为缓存
数据库·redis·缓存
月光水岸New3 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
狄加山6753 小时前
数据库基础1
数据库
我爱松子鱼3 小时前
mysql之规则优化器RBO
数据库·mysql
chengooooooo3 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
Rverdoser4 小时前
【SQL】多表查询案例
数据库·sql
Galeoto4 小时前
how to export a table in sqlite, and import into another
数据库·sqlite
人间打气筒(Ada)5 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231115 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql
喝醉酒的小白5 小时前
PostgreSQL:更新字段慢
数据库·postgresql