Решил сделать поиск с фильтрами на сайте... В БД есть 2 таблицы: products (products_id, products_name) products_to_options (products_id, options_id) Допустим содержимое последней такое: (опции привязанные к товарам) (1, 20); (1, 21); (1, 22); (2, 20); (2, 21); (3, 22); Естественно кол-во этих опций, привязанных к товару может быть любое... Цель: вывести список products_id в которых будет заданный список options_id одновременно. сделал запрос типа: SELECT p.products_id FROM products p, products_to_options p2o WHERE p.products_id = p2o.products_id AND p2o.options_id IN ('20','21','22') GROUP BY p.products_id HAVING COUNT(*) = 3 Отображает правильно! Но какие то непонятные чувства внутри - что сделал криво!) Кто нибудь сталкивался с такими фильтрами - и может поделитесь опытом?Хочу узнать правильно ли я сделал, и какие есть другие способы реализации данной задачи? Спасибо.
Согласен, я тоже пробывал JOIN, суть не изменилась , поэтому вернул текущий вариант так как больше привык к такому..) Спасибо за ответ!