Мои данные выглядит следующим образом:как присоединиться к таблице, используя условие на основе значения столбца
Как вы можете видеть, у меня есть дубликат Premium
от $ 41. Если я скажу, в моем JOIN
состояния:
` LEFT OUTER JOIN Catalytic_vw_AggregateScheduleUniqueGUID agg ON agg.QuoteGuid = dbo.tblQuotes.QuoteGUID AND agg.guid = CL.CompanylocationGUID
AND agg.policyNumber IS NOT NULL
Тогда я не буду видеть NULL
значения в PolicyNumberFromRater
колонки. Но я не хочу видеть NULL только для определенного LineGUID
, не для всех из них.
В основном я хочу сказать: использовать условие AND agg.policyNumber IS NOT NULL
только для LineGUID = CF144437...
Но если это собиралось быть другой LineGUID
тогда я хочу видеть NULL
в `PolicyNumberFromRater.
Как я могу это сделать, когда я соединяю столы вместе?
Таблица, содержащая LineGUID
, составляет tbl.Quotes
, которая также может быть найдена в JOIN
.
Вот мой полный JOIN
select PolicyNumber
FROM tblFin_Invoices INV
INNER JOIN dbo.tblQuotes ON INV.QuoteID = tblQuotes.QuoteID
INNER JOIN tblFin_InvoiceDetails INVD ON INV.InvoiceNum = INVD.InvoiceNum
INNER JOIN dbo.tblQuoteDetails ON dbo.tblQuotes.QuoteGUID = dbo.tblQuoteDetails.QuoteGuid AND tblQuoteDetails.CompanyLineGuid = CF144437-F128-4B77-AC19-877247347D02
INVD.CompanyLineGuid
LEFT OUTER JOIN dbo.tblCompanyLines ON dbo.tblQuoteDetails.CompanyLineGuid = dbo.tblCompanyLines.CompanyLineGUID
LEFT OUTER JOIN dbo.tblCompanyLocations AS CL ON dbo.tblCompanyLines.CompanyLocationGUID = CL.CompanyLocationGUID
LEFT OUTER JOIN tblCompanyLocations ON tblQuotes.CompanyLocationGuid = tblCompanyLocations.CompanyLocationGUID
---------/*This is where I need the condition*/
LEFT OUTER JOIN Catalytic_vw_AggregateScheduleUniqueGUID agg ON agg.QuoteGuid = dbo.tblQuotes.QuoteGUID AND agg.guid = CL.CompanylocationGUID
AND agg.policyNumber IS NOT NULL
--(use "AND agg.policyNumber IS NOT NULL" only for LineGUID = CF144437...)
LEFT OUTER JOIN tblSubmissionGroup ON tblQuotes.SubmissionGroupGuid = tblSubmissionGroup.SubmissionGroupGUID
LEFT OUTER JOIN tblUsers ON INV.UnderwriterUserGUID = tblUsers.UserGUID
LEFT OUTER JOIN tblClientOffices ON tblQuotes.QuotingLocationGuid = tblClientOffices.OfficeGUID
LEFT OUTER JOIN tblInsureds ON tblSubmissionGroup.InsuredGuid = tblInsureds.InsuredGuid
LEFT OUTER JOIN lstPolicyTypes ON tblQuotes.PolicyTypeID = lstPolicyTypes.PolicyTypeID
Спасибо. Отличная идея. – Oleg