第一桌(学生)

|name |  matricNo |  Subject  |
|John |  A01      |  History  |
|John |  A01      |  Math     |
|John |  A01      |  Language |


2Nd表(备注)

|name |  matricNo |  Subject  | Grade |
|John |  A01      |  History  |   A   |
|John |  A01      |  Math     |   B   |


我已经查询了
*这样的输出*

查询=从学生中选择a。*,b。成绩a左连接备注b on(a.matricNo = b.matricNo)

|name |  matricNo |  Subject  | Grade  |
|John |  A01      |  History  |  A     |
|John |  A01      |  Math     |  B     |


但是我想要这样的输出:-

|name |  matricNo |  Subject  |  Grade  |
|John |  A01      |  History  |   A     |
|John |  A01      |  Math     |   B     |
|John |  A01      |  Language |  NULL   |


我已经尝试过左联接和右联接也给了我相同的输出。

最佳答案

您可以像下面这样连接到表格student中的所有列

select t1.*,t2.grade from student t1
left join remark t2 on t1.name =t2.name and t1.matricno=t2.matricno and t1.subject =t2.subject


这正在工作Fiddle

关于mysql - 简单查询如何加入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22681913/

10-11 03:31