SQL SUM на доступ 2003
В настоящее время у меня есть следующий запрос, который я хочу выполнить
SELECT Buyer.nCustomerID, Order.[Order Number], SUM(Order.[Order Total Cost])
FROM [Order] INNER JOIN [Buyer] ON Order.nCustomerID = Buyer.nCustomerID
GROUP BY Buyer.nCustomerID,Order.[Order Number];
Однако Мой nCustomerID
может быть продублировано, поэтому я хочу сделать следующее: если nCustomerID
появляется более одного раза, добавьте общую стоимость заказа вместе. Я считаю, что моя проблема с Group By.
Group By
должно быть установлено просто Buyer.nCustomerID
Однако, если я удаляю Order.[Order Number]
я получаю следующую ошибку:
[ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'Order Number' as part of an aggregate function.
Если я оставлю Order.[Order Number]
в запросе он сохраняет дублирующее поле.
Может кто-нибудь предложить какой-либо совет по этому вопросу?
1 ответ
Решение
Я думаю, что вы имеете в виду:
SELECT Buyer.nCustomerID, SUM(Order.[Order Total Cost])
FROM [Order] INNER JOIN [Buyer] ON Order.nCustomerID = Buyer.nCustomerID
GROUP BY Buyer.nCustomerID
Возможно, вам не нужны две таблицы.