declare @a table (orderid int, goods nvarchar(50))
INSERT INTO @a VALUES
(1,'it1'),(1,'it3'),(1,'it4'),
(2,'it1'),(2,'it2'),(2,'it3'),(2,'it4'),
(3,'it1'),(3,'it2'),(3,'it3'),
(4,'it1'),(4,'it3'),(4,'it4'),(4,'it4')
select a.orderid
from @a a
group by a.orderid
having count(distinct case when a.goods in ('it1','it3','it4') then a.goods end)=3