gpt4 book ai didi

mysql - 左连接不起作用

转载 作者:搜寻专家 更新时间:2023-10-30 20:17:56 24 4
gpt4 key购买 nike

我在连接两个表时遇到问题。

我有两个包含字段的表[如下所示]:

Table 1 : prospectus - 
idprospectus(int(2)), subjectcode(varchar(40)), units(int(2))

Table 2 : Student -
studentid(int(10)), subjectcode(varchar(40)), grade(varchar(10)), remarks(varchar(30))

我想要的是加入这两个表,即使 Student 表中 subjectcode 的值不存在(prospectus 表包含所有科目或 subjectcodes,而 Student 表只有在学生注册后才有 subjectcode该科目的成绩,它还包含学生注册的科目的成绩。)

我已经尝试执行下面的查询:

select p.subjectcode, s.grade, s.note 
from prospectus p
left join student s on s.subjectcode=p.subjectcode
where s.studentid='2011-10258'
order by p.idprospectus

但是上面的查询只会给我这个:

--------------------------------
| subjectcode | grade | Note |
--------------------------------
| Eng | 89 | Passed |
| Math | 93 | Passed |
| Sci | 90 | Passed |
--------------------------------

我已经尝试过使用右连接、内连接、外连接,但它们都会给我如上所示的相同输出。

您可以在下面引用我的首选输出:

--------------------------------
| subjectcode | grade | Note |
--------------------------------
| Eng | 89 | Passed |
| Math | 93 | Passed |
| Sci | 90 | Passed |
| Soc | NULL | NULL |
| Lit | NULL | NULL |
--------------------------------

有人可以帮我摆脱这个吗?

最佳答案

因为你使用了WHERE子句,请尝试使用AND

select p.subjectcode, s.grade, s.note 
from prospectus p
left join student s on s.subjectcode=p.subjectcode
AND s.studentid='2011-10258'
order by p.idprospectus

关于mysql - 左连接不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26751495/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com