![]() |
0 Всего найдено: 4
bednyakovf
Сообщение
26/03/2013 19:07
Копия темы
сложный MySQL запрос Здравствуйте... Помогите пожалуйста.... Есть таблица "an_category_sort" с 2 полями "category_parent_id" и "category_child_id" я думаю понятно что здесь указаны вложенности категорий... Вложеностей может быть от 2 до 10... Т.е. много вложенных категорий Также есть таблица "an_category_product" с полями "category_id" и "product_id" т.е тут указывается какой продукт связан с какой категорией Задача вот в чём: вывести все категории category_parent_id=0 НО так чтобы проверить выводить лишь те категории, в которых содержатся продукты... И проблема в том, что категория может и не содержать продукты, но вложенная в неё (то есть она уже как category_parent_id) категория СОДЕРЖИТ вот и нужно её тоже вывести... определенная категория с category_parent_id=0 не содержит продуктов, первая вложенность категорий в нее не содержит, а вторая вложенность содержит ВОТ такую НАДО выводить... Я сделал только для первой вложенности SELECT * FROM an_category_sort AS SORT WHERE category_parent_id=0 AND (SELECT count(category_id) FROM an_category_product WHERE category_id=SORT.category_child_id )>0 а как для вложенных проверить???
1site
Сообщение
26/03/2013 19:14
Копия темы
Зачем публиковать второй раз и чем не понравился мой ответ?
bednyakovf
Сообщение
26/03/2013 19:15
Копия темы
не устроил(( хотелось бы оптимальнее простите а удалил, т.к. переместил в другую категорию вопросов...
1site
Сообщение
26/03/2013 19:30
Копия темы
0
Оптимальнее не получится. Я дал наиболее оптимальный вариант с триггером. Даже если вы рекурсивно будете делать SQL запросы через любой ЯП это будет не оптимально. |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |