сразу скажу 2-й запрос находит какие-то "левые" данные. Если в результатах первого выбрано 17 позиций и все они отвечают фильтрам, то второй выгреб аж 707 позиций!!! И кликнув несколько наугад, вижу, что они не отвечают критериям поиска.
1-й запрос
select filter_id, count(distinct filter_id) as cnt from t_filters_variables where ((filter_id=4 and filter_value=8 or filter_id=4 and filter_value=99) or (filter_id=9 and filter_value=10 or filter_id=9 and filter_value=100 or filter_id=9 and filter_value=101)) group by filter_id having cnt>1 limit 0, 15
2-й запрос
select filter_id from t_filters_variables where ((t5.filter_id='4' and t5.filter_value in (8,99)) or (t5.filter_id='9' and t5.filter_value in (10,100,101))) limit 0, 15
|