Hi
These will probably perform like a dog on larger sets, but here is 2 more options
SELECT set_id, product, attribute
FROM #temp t
INNER JOIN
(
SELECT DISTINCT MIN(set_id) minid
FROM #temp
GROUP BY product, attribute
) s ON t.set_id = s.minid
SELECT set_id, product, attribute
FROM #temp t
WHERE set_id in (
SELECT MIN(set_id) minid
FROM #temp
GROUP BY product, attribute
)