![]() |
|
Модераторы: skyboy |
![]()
|
|
| Error202 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 195 Регистрация: 5.11.2004 Где: Moscow Репутация: нет Всего: нет |
Есть таблица товаров
id, name, price Есть таблица категорий id, name, parent_id Есть табличка для товаров, которые находятся в нескольких категориях id, offer_id, category_id Не подскажите, как лучше : 1. вытянуть все товары по id категории 2. вытянуть 20 случайных товаров из категории (включая вложенные) по id этой категории Условие, в таблице товаров 3 млн записей, в таблице категорий, 2500 записей, в последней таблице 3,8 млн записей Спасибо! Это сообщение отредактировал(а) Error202 - 18.3.2012, 20:46 |
|||
|
||||
| Error202 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 195 Регистрация: 5.11.2004 Где: Moscow Репутация: нет Всего: нет |
Первое сделал...
Второе реально? |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
если тебе надо часто вытягивать подкатегории при неограниченной вложенности, лучше перейти на структуру Nested sets для хранения стурктуры категорий. или, хотя бы, на materialized path. ну, чтоб избавиться от рекурсии, если вложенность категорий не ограничена сверху.
в текущей ситуации, либо сначала рекурсивно повытягивать все категории, сформировать список id и вторым запросом дернуть случайные товары из указанного списка, либо дергать случайные товары, с последующей проверкой — попал в нужную категорию или нет |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |