接数据库MySQL学习(02)下面涉及到的表前面有提供
连表查询
连表查询的语法
select *
from 表1
join 表2
on 表1.字段 = 表2.字段 如果on的条件没有声明,那么结果一定是一个笛卡尔积
连表查询包括如下:
1:内连接,求两张表的交集
-- INNER JOIN可以简写为join
SELECT * FROM employees emp
INNER JOIN departments dept
ON emp.deptid = dept.deptid
2:左外连接,求左表的全部数据,用右表去匹配,如果按照连表条件能够匹配上就显示数据,如果匹配不上,就用null来代替
-- left outer join 可以简写为LEFT JOIN
SELECT * FROM employees emp
LEFT JOIN departments dept
ON emp.deptid = dept.deptid
3:右外连接,右边的表全部显示,然后左边的表按照连表条件去匹配,匹配上显示数据,匹配不上用null代替
SELECT * FROM employees emp
RIGHT JOIN departments dept
ON emp.deptid = dept.deptid
4:左边表的独有部分
SELECT * FROM employees emp
LEFT JOIN departments dept
ON emp.deptid = dept.deptid
WHERE dept.deptid IS NULL
5:右边表的独有部分
SELECT * FROM employees emp
RIGHT JOIN departments dept
ON emp.de

本文详细介绍了MySQL中的连表查询,包括内连接、左外连接、右外连接、独有部分和公共部分的区别,以及如何进行多表查询和自连接。同时讨论了子查询的嵌套使用,区分了非相关子查询和相关子查询的特点。

1748

被折叠的 条评论
为什么被折叠?



