У меня есть проблема, чтобы показать общую сумму продаж (другими словами, суммировать цену) для всех заказов клиентов. Со следующим SQL-выражением мне удается присоединиться к таблицам «Order1», «Order2» и «Customers» для получения необходимых атрибутов, чтобы показать правильный город для клиентов, которые сделали не менее 3-х заказов, и суммировать количество заказов для этого :Как суммировать стоимость заказа
SELECT c.CityName, SUM(o2.Orderquantity) AS 'Total sales amount'
FROM Order1 o1
INNER JOIN
(SELECT o1.CustomerNr
FROM Order1 o1
GROUP BY o1.CustomerNr
HAVING COUNT(o1.CustomerNr) >= 3)
AS a ON o1.CustomerNr = a.CustomerNr
INNER JOIN Order2 o2 ON o1.Ordernr = o2.Ordernr
INNER JOIN Customers c ON o1.CustomerNr = c.CustomerNr
GROUP BY c.CityName
структуры таблиц Я работаю выглядеть следующим образом:
- 'Customers' имеет столбцы: CustomerNr, Название города
- 'Заказ1' имеет столбцы: Ordernr, CustomerNr
- 'Order2' имеет столбцы: Ordernr, Productnr, Or дер количество
- «Продукты» имеет столбцы: ProductNr, Цена
Итак, что я хочу, чтобы иметь возможность показать город клиентов, которые сделали по крайней мере на 3 порядка (до сих пор так хорошо), но также с общей суммой продаж (вместо общего количества заказа) для этих клиентов, кто-нибудь знает, как я могу это сделать в соответствии со структурами таблиц выше?
Образец данных: Пример данных для таблицы «Клиенты»:
- CustomerNr CityName:
- 01109 New York
- 01999 Los Angeles
- 08120 London
Sample data for 'Order1':
- Ordernr CustomerNr
- 1306 1109
- 1306 1109
- 1307 1109
Sample data for 'Order2':
- OrderNr ProductNr Order quantity:
- 1306 15-116 01109 3
- 1306 46-701 01109 2
- 1307 15-96 01109 1
- 1308 17-91 18208 1
(etc...)
Sample data for 'Products':
- ProductNr Price:
- 15-116 44.00
- 15-96 28.50
- 46-701 3000.00
etc...
Как вы можете видеть в «Заказ1» клиент может быть связан с Serveral ordernr, и, как вы можете увидеть в разделе «Продукты» , каждый продукт имеет свой уникальный продукт с его ценой. И, как вы можете видеть в «Order2», заказчик 1109 (в данном случае) купил 7 15-115 продуктов и 1 46-708 продуктов на заказ 1306. Но этот клиент также купил 2 из 15-96 продуктов в другом порядке (1307). Этот клиент, который из Нью-Йорка, сделал 2 заказов в общей сложности, так что в этом случае результат должен выглядеть следующим образом:
CITYNAME, общая сумма продаж: Нью-Йорк, 6160,50
переименовании одной и той же таблицы псевдонимов (o1) в нескольких местах очень confu петь. – jarlh