Таблицы даны:
1) Categories: id, name
2) Countries: id, name
3) Producers: id, name, country_id
4) Products: id, name, price, category_id, producer_id
5) Customers: id, name, surname, age, country_id
6) Customer_orders: id, customer_id, product_id, quantity, discount, order_date
Я хочу найти категорию наиболее популярных товаров для каждой страны (категория самых популярных товаров - товары были произведены производителями из указанной страны)
Мое нынешнее приложение:
select countries.name, categories.name, sum(cs.quantity) from countries
join producers on producers.country_id = countries.id
join products on products.producer_id = producers.id
join categories on categories.id = products.category_id
join customerorders as cs on cs.product_id = products.id
group by countries.name
Это не совсем хорошее решение. Не уверен, как это сделать, я полагаю, мне следует сгруппировать все продукты по странам, а затем для каждой страны подсчитать количество продуктов для каждой категории продуктов (продукты, произведенные производителями из указанной страны) и, наконец, найти категорию с большинством приобретенных продуктов.