Всем привет и Любой,SQL LEFT JOIN Условия
У меня есть вопрос, который я надеялся решить с помощью левой Присоединяйтесь, используя условия, однако, я до сих пор понять это, и я начинаю, чтобы получить головную боль , Я ищу, чтобы вытащить данные при использовании левого соединения, но я хочу, чтобы только два столбца были включены, и я хочу, чтобы условие основывалось на третьем столбце из этой второй таблицы. Также я открыт для решений, которые не обязательно требуют условия левого соединения.
Select a.ID,
a.AssociateName,
a.FormTypeID
b.Segment1
b.Segment2
From NinjaTable a
Left Join ShinobiTable b On b.AssociateName = a.AssociateName
Вот условие, что мне нужно (я собираюсь слово это в, если заявление, хотя я знаю, что это не относится), что делает это сложно это возможно ассоциировать с более чем 1 задание Положение дел. Возможно, они переехали в другой отдел, и их предыдущий список теперь неактивен, однако у них все еще есть еще один активный. Мне нужно условие, чтобы по существу захватить активным только тогда, когда применимое еще, если не является активным, то захватить неактивный один
IF b.AssignmentStatus = 'Active' then perform left join Normally
IF b.AssignmentStatus = 'Inactive' Then only perform left join if there is not an active one.
Это может быть не обязательно, но определения таблиц могут помочь. В левом соединении вы получите все данные в левой таблице и любые совпадающие данные или нуль во второй таблице. Это то, что вы хотите? – Chris
как о двух подзапросах, отфильтрованных 'WHERE', а затем' UNION''d вместе? –
Некоторые примеры данных и ожидаемые результаты всегда полезны:] –