Im을 가져 오는 열 중 하나는 PolicyType
이고 그 조건은 TransactionType = 'Policy'
입니다. 하지만 때로는 같은 Insured
은 동일한 TransactionType
값을 가질 수 있지만 다른 PolicyType
값을 가질 수 있습니다. 그래서 동일한 TransactionType
과 동일한 피보험자가 있지만 PolicyType
이 다른 경우 - 우선 순위를 정하고 정책 유형이 ='Rewrite'
인 레코드를 선택하고 PolicyType='New Business'
으로 무시하십시오. 간단 CASE
문이어야한다하지만 난 당신의 샘플 데이터를 확인한 후 열 이름을 기준으로 우선 순위가있는 레코드를 선택하지 않는 방법
SELECT CAST(YEAR(EffectiveDate) as CHAR(4))+'/'+ CAST(MONTH(EffectiveDate) AS VARCHAR(2)) AS YearMonth,
Insured,
PolicyNumber,
EffectiveDate,
PolicyType,
TransactionType,
SUM(Premium) as Premium,
ExperienceMod,
ISNULL(ScheduleMod,0) as ScheduleMod,
TerritoryMod,
ISNULL(EffectiveMod,0) as EffectiveMod
FROM ProductionReportMetrics
WHERE EffectiveDate >=DateAdd(yy, -1, DATEADD(d, 1, EOMONTH(GETDATE()))) AND EffectiveDate <= EOMONTH(GETDATE())
AND CompanyLine = 'Arch Insurance Company' AND Insured <>'Jerry''s Test' AND TransactionType = 'Policy' --and PolicyNumber ='ZAWCI2517900'
GROUP BY Insured,
PolicyNumber,
PolicyType,
TransactionType,
EffectiveDate,
experienceMod,ScheduleMod,TerritoryMod,EffectiveMod, Premium,EffectiveDate
ORDER BY YEAR(EffectiveDate), (MONTH(EffectiveDate)), PolicyType
최고 !!!!!!!!!! 대단히 감사합니다 @ 댄스 - 헨리 – Oleg