Maybe this?Sample datadeclare @t table(Account_Number int, [Name] varchar (20),Work_Order int, Service1 int)insert @tselect 123, 'TEST', 111111762, -1union all select 123, 'TEST', 111111925, 0union all select 123, 'TEST', 111111926, 0union all select 123, 'TEST', 111111175, 2union all select 321, 'TEST1', 222222101, -1union all select 321, 'TEST1', 222222001, 1union all select 321, 'TEST1', 222222005, -1union all select 321, 'TEST1', 222222005, 2
Queryselect distinct b.Account_Number,b.[Name],b.Work_Order,a.Service1from (select Account_Number,[Name],MAX(case when Service1 > 0 then Work_Order else null end) as Work_Order,SUM(Service1) as Service1 from @t group by Account_Number,[Name]having SUM(Service1) > 0) ainner join @t bon a.Account_Number = b.Account_Number and a.[Name] = b.[Name] and a.Work_Order = b.Work_Order
ResultAccount_Number Name Work_Order Service1-------------- -------------------- ----------- -----------123 TEST 111111175 1321 TEST1 222222005 1