Здравствуйте, посоветуйте как выполнить поиск по тому принципу который работает сейчас, таким образом, чтобы выполнялся выдавался результат, даже если идет поиск с одинаковым значением поля caption, но с разными значениями поля value, т.е как в запросе. По моему запросу найдутся совпадения только если убрать это ('tip_field','2') и это ('text','test2') потому что таких соответствий нет в таблице, но есть такие ('tip_field','1'), ('text','test')
Как быть? в списке in может быть до 50 значений и такой принцип поиска единственный , который подходит для решения задачи
select class_table1.* from class_table1
left join class_table2 on class_table1.id=class_table2.id
where class_table1.category_id = 104
and (class_table2.`caption`,class_table2.`value`) in (('tip_field','1'),('tip_field','2'),('text','test'),('text','test2'))
GROUP BY class_table1.id
HAVING COUNT(DISTINCT class_table2.caption, class_table2.value) = 4