Если ваши таблицы предназначены для отношений N: M, конечно, у вас будут проблемы с выбором уникальных значений. Самым простым подходом здесь было бы использование функций MIN () или MAX ()
SELECT DISTINCT MAX(product.id)
FROM product
JOIN param_product ON param_product.product_id = product.id
WHERE param_id IN ('1000', '2000')
Я думаю, это должно помочь вам встать на пути.
Кроме того, если продукт уникален для param, вам не нужен столбец «id» в таблице «param_product», вы можете назначить столбцы первичного ключа ON (product_id, param_id), поскольку они, вероятно, должны быть уникальными.