Предложение Order by нарушает группировку в запросе.
I have a table that looks like this : Region Country Earnings Americas Canada 10000 Americas Mexico 20000 Americas USA 50000 Asia-Pac China 70000 Asia-Pac Japan 40000 I need a report that groups the results based on the Region and then the Country as well as orders by the Earnings within the Region in a descending manner. I am using the below query : Select Region, Country, SUM(Earnings) from MyTable Group By Region, Country Order By SUM(Earnings) DESC However, the result set that I get looks like the below : Region Country Earnings Asia-Pac China 70000 Americas USA 50000 Asia-Pac Japan 40000 Americas Mexico 20000 Americas Canada 10000 i.e. I get the result set ordered by Earnings in a descending manner but the grouping gets disturbed. Any ideas?
Что я уже пробовал:
Я попробовал написать запрос сам & его, как показано ниже :
Выберите регион, страну, сумму (доход) из MyTable
Группа По Регионам, Странам
Заказ по сумме (доходу) DESC
0x01AA
Ваш запрос делает именно то, что должен. Вы Группируетесь По Регион _и_ Страна а в таблице, которую вы показываете, на данный момент есть только записи разных групп ... добавьте, например, еще одну строку для "Americas, Canada" с заработком 70 000 долларов, и вы увидите, что все правильно.
phil.o
Поскольку у вас есть только одна страна для каждого региона, результат, который вы получаете, является правильным. Вы можете попытаться добавить еще несколько дубликатов регионов/стран с разными доходами, чтобы получить более значимый результат.
0x01AA
Я думаю, вы имеете в виду "для каждого региона" :)
phil.o
Ой :)
Теперь исправлено. Спасибо,что указал.