Anda sudah dekat
SELECT order_id
FROM orders
WHERE product_id in (222,555)
GROUP BY order_id
HAVING COUNT(DISTINCT product_id) = 2
Mengenai pertanyaan "karena penasaran" Anda dalam aljabar relasional, ini dicapai hanya dengan divisi . AFAIK no RDBMS telah mengimplementasikan ekstensi apa pun yang membuat ini sesederhana di SQL.