Я написал следующий оператор sql, но я не уверен, как написать оператор where, потому что он является условным. Поэтому у меня есть:SQL conditional where statement
declare @subject varchar(100)
select surname, forename, result
from student
join subject on subject.upn = student.upn
where...
что я тогда хочу написать, как SQL является:
where
if subject = 'English' then [email protected] and KS2en=''
or if subject = 'Maths' then subject = @subject and KS2ma = ''
or if subject <> 'Maths' and <> 'English' then subject = @subject and KS2av = ''
Я предполагаю, что это может быть сделано логически или, возможно, с помощью case
, но я на немного потери в данный момент.
Вот таблицы:
Student
UPN | Surname | Forename | KS2en | KS2Ma | KS2av
Тема
UPN | Subject
Все это VARCHAR.
@marc_s сделал мат. – Matt
Показать все столбцы + типы вовлеченных таблиц, 'display' также столбца или просто другое слово для' then do ... '? Покажите некоторые данные образца и желаемый результат. –
@TimSchmelter благодарит Тима. Я отредактировал вопрос. Надеюсь, теперь это становится немного яснее. – Matt