- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть запрос, в котором достается ДЕРЕВО значений, которое потом повтроно запрашивается.
1:
2:
Можно ли как-то сразу доставть ДЕРЕВО и запросить это ДЕРЕВО КАТЕГОРИЙ в MYSQL? И стоит ли оно того?
Я не совсем понял вопрос, но попробуйте так
erynok, по сути это не устранит проблему.
я даже и не понял в чем проблема?
erynok, по сути это не устранит проблему.
Тогда можно пример структуры таблиц.
И что нужно выбрать.
А то в примере не понятно, что с чем джоинится
erynok, у ТС проблема, c тем что поддеревья выбираются рекурсией, а этих поддеревьев дофика.
Хотя структуру и я хотел бы глянуть.
да структура простая.
Cat_tree - тут значения категорий. Типа 1,2,15,31.
Я запрашиваю сначала эти значения, что бы потом запросить IN(X).
X- вытащеное значение Cat_tree для нужной мне категории. Т.е. по сути по идее вопрос относится к примитивным.
Напрмиер если запросили страницу с рубрикой_id=15, то запрашивается Cat_tree для каталога 15, потом второй запрос запрашивает IN(1,11,13) потом рисуется дерево до нужной категории....
п.с. на всяк пж
catalog
cat_id cat_lang cat_pid cat_rubrika cat_tree cat_level cat_type cat_access cat_show
Prosto_niki добавил 20.09.2010 в 16:26
Я не совсем понял вопрос, но попробуйте так
Спасибо. Подошло. Я не знал раньше что в MYSQL так можно. Теперь поправлю кучу запросов.
Prosto_niki добавил 20.09.2010 в 16:27
erynok, у ТС проблема, c тем что поддеревья выбираются рекурсией, а этих поддеревьев дофика.
Хотя структуру и я хотел бы глянуть.
По той ветке где 800 категорий, то отдельно. Тут немного другой вопросик был :) Спасибо ребята.
Спасибо. Подошло.
Если я не ошибаюсь, то IN() по сути делает те же запросы, единственно, что это делается в самом mysql, а не дёргается из пхп.
вот тут статья по поводу иерархических запросов
http://club.shelek.ru/viewart.php?id=327
Если я не ошибаюсь, то IN() по сути делает те же запросы, единственно, что это делается в самом mysql, а не дёргается из пхп.
Впервые слышу такое.. Хотя все может быть.
В одних рекомендация читал что MYSQL мол "не язык прогармирования" и лучше там ничего умного не делать, а в других редакциях наоборот, пишут что через мускул будет значительно быстрее и меньше нагрузки. В моем случае IN помогает уйти от Х запрсоов... Но если действительно это множественный запрос и не желаетелен то можно разбить explode(, .. ) значения... И сделать выражение типа " WHERE cat_id='3' OR cat_id='2' OR cat_id='1' ", но стоит ли оно того? К тому же доставть значение ДЕРЕВА - это доп. запрос получится. (то как раз от чего я отказался сделав как написали выше)
Prosto_niki, запросы "...WHERE cat_id IN(1,2,3)" и "...WHERE cat_id=1 OR cat_id=2 OR cat_id=3" тождественны с точки зрения MySQL.
По вопросу выдёргивания дерева категорий из базы - дёргайте вы его целиком ОДНИМ запросом и стройте дальше из него хоть дерево, хоть куст, хоть казино со шлюхами и блэкджеком средствами PHP. Плюс не забывайте про кэширование.