mysql左外连接右外连接
时间: 2023-11-04 12:59:06 浏览: 96
左外连接和右外连接是SQL中的两种连接方式,用于将两个或多个表中的数据进行关联查询。左外连接返回主表中所有的记录以及与之匹配的副表记录,右外连接返回副表中所有的记录以及与之匹配的主表记录。
在MySQL中,左外连接使用关键字LEFT JOIN,右外连接使用关键字RIGHT JOIN。
例如,对于以下两个表的查询:
主表dept:
| deptno | deptname |
|--------|----------|
| 1 | HR |
| 2 | IT |
| 3 | Sales |
副表emp:
| empno | empname | deptno |
|-------|---------|--------|
| 1 | John | 1 |
| 2 | Mary | 2 |
使用左外连接:
SELECT dept.deptno, dept.deptname, emp.empno, emp.empname
FROM dept
LEFT JOIN emp ON dept.deptno = emp.deptno;
结果:
| deptno | deptname | empno | empname |
|--------|----------|-------|---------|
| 1 | HR | 1 | John |
| 2 | IT | 2 | Mary |
| 3 | Sales | NULL | NULL |
使用右外连接:
SELECT dept.deptno, dept.deptname, emp.empno, emp.empname
FROM emp
RIGHT JOIN dept ON emp.deptno = dept.deptno;
结果:
| deptno | deptname | empno | empname |
|--------|----------|-------|---------|
| 1 | HR | 1 | John |
| 2 | IT | 2 | Mary |
| NULL | NULL | NULL | NULL |
阅读全文