Я пытался написать запрос с внутренним соединением, только если RepID таблицы 1 существует в таблице2, если не присоединиться к таблице2. С запросом, который я использовал ниже, я не получаю от обеих таблиц, если repID не существует в таблице2. Как это возможно? Я использую sql server 2005. Спасибо заранее!Внутреннее соединение с условием if
Select * from Table1
inner join Table2 on Table1.RepID = Table2.RepID
where Table1.Date = @Date
order by Table1.Date desc
Вы имеете в виду, если repID is NULL? – Luke101
'SELECT * FROM Table1' должно быть очевидно, что в результате ничего из' Table2' не будет получено, что вызывает вопрос: почему вы думаете, что хотите присоединиться к 'Table2' вообще? Предложение: напишите два запроса, по одному для каждого условия ('REPID' существует в обеих таблицах,' REPID' существует только в 'Table1'), а затем' UNION 'их вместе, при необходимости предоставляя одобренные DBA значения по умолчанию для любых отсутствующих значений. – onedaywhen