Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Поиск заказов по товарам в них
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, помогите пожалуйста.. Есть базовые знания по MySQL запросам, но хочется сделать более правильно.. поэтому прошу помощи.. Задача: Есть таблица заказов(хранится в таблице orders_list), в заказе есть список товаров(которые хранятся в таблице - orders_items, связь с `order_list` идет через поле `order_id`). С помощью поиска по названию товара, необходимо найти заказы конкретного пользователя, в которых есть искомый товар. Например вводим запрос в поиске - Ведро #123, надо получить из базы все заказы данного юзера, содержащие этот товар. Кривой способ которым я могу решить задачу - получить сначала все заказы, в которых есть данный товар через таблицу orders_items.. а затем делать выборку заказов.. но тут придется фильтровать чужие(заказы не конкретного пользователя, а всех) заказы и тд... это лишняя обработка... Можно наоборот, сначала все заказы взять юзера, а затем в цикле откинуть те что не содержат искомого товара.. но это тоже лишние трудозатраты )) Думаю как-то с помощью JOIN или как-то иначе надо решить более грамотно данную задачу.. Направьте пожалуйста, кто уже владеет данными инструментами :) Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 12:18 |
|
||
|
Поиск заказов по товарам в них
|
|||
|---|---|---|---|
|
#18+
diepowerполучить сначала все заказы, в которых есть данный товар через таблицу orders_items.. а затем делать выборку заказов.. но тут придется фильтровать чужие(заказы не конкретного пользователя, а всех) заказы и тд... это лишняя обработка... Можно наоборот, сначала все заказы взять юзера, а затем в цикле откинуть те что не содержат искомого товара.. но это тоже лишние трудозатраты )) Бред. При выполнении запроса нет никаких "сначала" или "потом". Запрос - это единая, неделимая, атомарная единица. Так что просто связывай таблицы и фильтруй по челу и по товару. Получишь требуемое. А уж сервер как-нить и сам сообразит, как сделать это наиболее эффективно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2018, 14:07 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39661921&tid=1829790]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 376ms |

| 0 / 0 |
