SELECT productID
FROM
(SELECT productID, count(productID) AS cnt
FROM
(SELECT DISTINCT productID, optionID FROM tablname) as a1
WHERE optionID IN (6,7)
GROUP BY user_id) AS a2
WHERE cnt=2
Страшно? Мне тоже. Но это проще, чем вариант dohlik и проще масштабируется.
В любом случае, запрос очень тяжелый. А для чего планируется использовать такую выборку? Может, есть есть способ обойтись без такой тяжелой выборки?