Этот код:Сортировка результатов агрегатной функции
SELECT ProductID, COUNT(ProductID) AS Occurrences
FROM OrderDetails
Group By ProductID;
моя попытка принять productIDs, которые происходят в таблице ORDERDETAILS, подсчитать, сколько заказов содержат этот продукт, а затем отсортировать PRODUCTID подсчитывает по убыванию. В терминах непрофессионала я хочу показать, какие продукты являются самыми популярными, показывая их счет в порядке убывания, чтобы продукты, которые «продали» больше всего, будут отображаться вверху. Проблема заключается в том, что когда я пытался использовать «Group by» с «Occurrences», он выплюнул ошибку, что я не могу использовать агрегированные функции с группой. Если я группирую по ProductID, он показывает подсчеты по всему месту, что не является самым полезным способом представления информации.
Единственное, что меня смутило, было использование «Qty». Я не знаю, используете ли вы его в качестве заполнителя для чего-то другого или чего-то еще, но в моем коде я бы использовал ProductID, потому что я хочу подсчитать (или суммировать) количество раз, когда каждый продукт появляется в таблице orderDetail. –
@TophHughes - я использовал «Qty», потому что я не уверен, какой столбец вызывается в вашей таблице, но обычно у вас будет количество упорядоченного столбца в таблице «OrderDetails». Рассмотрим случай, когда продукт А заказывается 10 раз, а продукт В заказывается 5 раз, а один из заказов продукта В - для количества 12. Я бы счел продукт В более популярным. – Anand