右外连接
右外连接以右表为基准,将左表中与右表匹配的行连接在一起,即使左表中没有匹配的行,右表中的所有行也会被保留。
示例:
假设我们有两个表,学生表 S1
和成绩表 E1
:
S1 (学生表)
| sid | sname | age | grade |
|-----|-----------|-----|-------|
| 8 | 赵一昊 | 19 | 2 |
| 11 | 钱途 | 20 | 3 |
| 35 | 孙笑天 | 21 | 4 |
E1 (成绩表)
| sid | cid | score |
|-----|------|-------|
| 8 | 101 | 91 |
| 8 | 108 | 80 |
| 11 | 101 | 91 |
| 11 | 108 | 80 |
| 35 | 101 | 91 |
| 35 | 108 | 80 |
| 66 | 108 | 80 |
右外连接 S1
和 E1
,连接条件为 S1.sid = E1.sid
,结果如下:
| S1.sid | sname | age | grade | E1.sid | cid | score |
|--------|-----------|-----|-------|--------|------|-------|
| 8 | 赵一昊 | 19 | 2 | 8 | 101 | 91 |
| 8 | 赵一昊 | 19 | 2 | 8 | 108 | 80 |
| 11 | 钱途 | 20 | 3 | 11 | 101 | 91 |
| 11 | 钱途 | 20 | 3 | 11 | 108 | 80 |
| 35 | 孙笑天 | 21 | 4 | 35 | 101 | 91 |
| 35 | 孙笑天 | 21 | 4 | 35 | 108 | 80 |
| NULL | NULL | NULL | NULL | 66 | 108 | 80 |
可以看到,E1
表中的所有行都被保留,即使 S1
表中没有对应的行。