такая ситуация: есть две таблицы: одна с товарами, другая таблица с ценами на них у поставщиков, т.е. для одного товара в таблице №1 есть несколько записей во таблице №2 с ценой и наличием.
пытаюсь сделать запрос, который бы вывел товары, а также его минимальную цену и максимальное наличие.
т.е. есть: table1.item_id = товар и table2.item_id = товар table2.item_price = цена table2.item_avail = наличие
цена и наличие числовые поля, чем выше значение в наличии, тем приоритетнее должен быть результат.
я делаю объединение двух этих таблиц, сортирую по наличию и цене, затем группирую по item_id. Но по факту группировка происходит раньше чем сортировка.
запрос такой:
SELECT `item_id`, `item_price`, `item_avail`
FROM (
SELECT *
FROM `items` as `table1`
LEFT JOIN(
SELECT * FROM `prices`
GROUP BY `item_id`
ORDER BY`item_available` DESC, `item_price` ASC
) as `table2` on `table2`.`item_id` = `table1`.`item_id`
) as `table1`
соответственно получается что в сортировке уже участвует только одна запись из таблицы 2. подскажите, как можно сделать сортировку, перед группировкой?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости