Можно ли в mysql сортировать по количеству записей?
Здравствуйте, скажите пожалуйста, можно ли на уровне запроса сортировать данные?
Запрос такого вида:
SELECT * FROM category LEFT JOIN product ON category.id = product.category_id WHERE category.id IN (1,2,3...)
В результате нужно получить вывод информации в виде "Категория1 -> продукт1, продукт2, продукт3..., Категория2 -> продукт1, продукт2...". Но категории должны сортироваться по количеству продуктов в них, то есть категория, в которой больше всего товаров - первая, в которой меньше всего - последняя
SELECT * FROM category
LEFT JOIN (SELECT tt.category_id, COUNT(p.*) AS cnt FROM product AS p WHERE p.color = "red") AS tt ON tt.category_id = category.id
WHERE category.id IN (1,2,3...)
ORDER BY tt.cnt DESC
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.