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

Возможно, вам не нужны две таблицы.

Другие вопросы по тегам