У меня есть запрос SQL, который использует внутреннее соединение с таблицей t1, который имеет два столбца ID
и FID
, в хранимой процедуре есть две переменные @ID
и @FID
, Inner присоединиться в качествеДинамический запрос с INNER JOIN и в SQL Server 2005
Inner Join t1 on t1.ID = @ID and t1.FID = @FID
Теперь проблема в том, что я хочу сделать ее динамичной. Если FID
из таблицы t1 равно нулю, то я должен применяться только идентификатор, соответствующий части, как
Inner Join t1 on t1.ID = @ID
В противном случае он должен быть оригинальным
Inner Join t1 on t1.ID = @ID and t1.FID = @FID
Не гуру SQL, а простое изменение на '(t1.FID = @FID ИЛИ t1.FID IS NULL)' work? – Mike
Слушайте Майка. Структура JOIN похожа на предложение WHERE. Вы можете делать там всевозможные вещи. – Bill