Devi filtrare prima aggregando:
select s.buyer_id
from sales s join
product p
on s.product_id = p.product_id
where p.product_name = 'iPhone'
group by s.buyer_id;
Oppure usa una funzione di aggregazione che conta le corrispondenze:
having sum(p.product_name = 'iPhone') > 0