Вы присоединяетесь к таблице C, если счет отсутствует, строка отбрасывается.
Вы должны использовать левое соединение в C, как в D.
Надеюсь, это поможет!
Также я бы поставил все условия, связанные с левым соединением таблицы в представлении, а не в разделе, где.
Попробуйте эту версию и скажите, возвращает ли она теперь все нужные записи (извините, у меня сейчас нет SQL Сервер активен, и я не могу проверить его)
select
a.StudentId, b.SubjectId, c.Score as tCA, d.Score as t
from
tbl_StudentToClass a
join
tbl_SubjectToClassArm b on a.ClassToClassArmId = b.ClassToClassArmId
left join
(select
sum(Score) AS Score, SubjectId, StudentId, TermId
from
tbl_Score
where
ScoreType = 1 and TermId = 1100
group by
SubjectId, StudentId, TermId) c on b.SubjectId = c.SubjectId
left join
(select
sum(Score) AS Score, SubjectId, StudentId, TermId
from
tbl_Score
where
ScoreType = 2 and TermId = 1100
group by
SubjectId, StudentId, TermId) d on b.SubjectId = d.SubjectId
where
a.ClassToClassArmId = 135 and
a.SchoolSessionId = 1069 and
c.StudentId = a.StudentId and
d.StudentId = a.StudentId