
# 左外连接
#### 功能描述
左外连接（LEFT OUTER JOIN）根据左表的记录去匹配右表，返回左表的所有记录。对于右表中没有匹配值的记录，结果集中相应列返回 NULL。
#### 语法格式
```
SELECT attr_expr_list FROM table_reference
  LEFT OUTER JOIN table_reference ON join_condition;
```
#### 参数说明
| **参数**              | **说明**                                                                 |
|:---|:---|
| **attr_expr_list**  | 查询列表达式列表，指定需要返回的列。                                                     |
| **table_reference** | 进行连接的表名或子查询。必须是已存在的表，否则会出错。                                            |
| **LEFT OUTER JOIN** | 左外连接关键字，返回左表的所有记录，右表中没有匹配值的记录将返回 NULL。LEFT JOIN 是 LEFT OUTER JOIN 的简写。 |
| **join_condition**  | 连接条件，通常为两表之间列的等值比较表达式。                                                 |
| **ON**              | 指定连接条件的关键字。                                                            |
   
#### 注意事项
- 所要进行 JOIN 连接的表必须是已经存在的表，否则会出错。
- LEFT JOIN 是 LEFT OUTER JOIN 的简写形式，两者语义完全相同。
 
#### 示例
左外连接时利用 student_info 表中的 courseId 与 course_info 中的 courseId 进行匹配，返回已经选课的学生姓名及所选的课程名称，没有匹配值的右表记录将返回 NULL。
```
SELECT student_info.name, course_info.courseName FROM student_info LEFT OUTER JOIN course_info ON student_info.courseId = course_info.courseId;
```
等价写法：
```
SELECT student_info.name, course_info.courseName FROM student_info LEFT JOIN course_info ON student_info.courseId = course_info.courseId;
```
