declare @t table(OrderNo int, Item varchar(10),Status int)insert @t select 1010,'Paper',20 unionselect 1010,'Pencil',20 unionselect 1010,'Staple',20 unionselect 1011,'Paper',20 unionselect 1011,'Brusch',20 unionselect 1011,'Bag',10 unionselect 1012,'Paper',19 unionselect 1012,'Bag',19 unionselect 1012,'Staple',19 select 1013,'Paper',18 unionselect 1013,'Bag',18 unionselect 1013,'Staple',18 select OrderNo,min(status) Statusfrom @t tgroup by OrderNo having min(t.status)=max(t.status) and min(status) in (19,20)