Я написал следующий запрос, который соединяет таблицу с уже соединенными таблицами. Я в основном использовал внутреннее соединение с использованием SQL Server. Мне интересно, как изменить приведенный ниже код, чтобы использовать Left join, а не внутреннее соединение?Как использовать левое соединение вместо внутреннего соединения
Ниже запрос три таблицы Смешанное, BOUND_TAB и RECORD
Вторая вещь, мне также нужно отфильтровать результаты, такие, что я использую политику с deductibleinUSD> 0 в «Blended» таблицы или Primary_R Type = ' Deductible 'и Primary_R Amount> 0 из внутреннего выбора. Это должно предоставить мне политики в моих окончательных результатах, если либо «Смешанный», либо «BOUND_TAB» указывает, что он имеет франшизу.
select
c.MPolicyNumber,
c.SNumber,
c.InsuredName,
c.EffDate,
c.Renewal,
c.GPremiumUSD,
c.Status,
c.deductibleinUSD, t.*
from
IT.dbo.Blended c
inner join
(select distinct
a.[Policy Number], a.[LOB],
a.[Primary_R Amount] as Bound_deductibles,
a.[Primary_R Type],
a.[EffDate] as CAS_EffDate
from
IT.dbo.BOUND_TAB a
inner join
IT.dbo.RECORD b on a.idxFile = b.[Bound Rater]
where
a.[Primary Retention Amount] > 0) t on t.[Policy Number] = c.MPolicyNumber
where
c.deductibleinUSD > 0
and c.ProductLine in ('Health','Cas')
order by
c.EffDate
Заранее благодарен!
Какой вопрос? –
Для вашего первого «вопроса»: зачем вам «LEFT OUTER JOIN»? что мешает вам просто заменить 'INNER' в вашем запросе? Для вашего второго вопроса: просто укажите эти фильтры в предложении 'WHERE'. Теперь, 'ProductLine' включительно с другими фильтрами или просто с' deductibleUSD'? –