У меня есть две объединенные таблицы: клиенты и заказы, которые связаны между собой CustomerPK.
В рассказе о клиенте я пытаюсь суммировать общие расходы каждого клиента (принимая сумму от объединения до таблицы заказов), а затемтакже рассчитать последние 12 месяцев, потраченные на этого клиента, это последняя строка, которая не работает, вот мой код:
SELECT
customers.CustomerPk,
customers.CustomerCode,
customers.CustomerName,
customers.AddressLine1,
customers.AddressLine2,
customers.AddressLine3,
customers.AddressLine4,
customers.AddressLine5,
customers.Town,
customers.County,
customers.PostCode,
customers.Country,
SUM(orders.OrderValue) AS `Total Spend`,
SUM(orders.OrderValue) WHERE orders.OrderDate >= curdate() - interval 1 year as `Last 12 Month Spend`
FROM customers
LEFT OUTER JOIN orders ON customers.CustomerPk = orders.CustomerFk
GROUP BY customers.CustomerPk, customers.CustomerCode, customers.CustomerName, customers.AddressLine1, customers.AddressLine2, customers.AddressLine3, customers.AddressLine4, customers.AddressLine5, customers.Town, customers.County, customers.PostCode, customers.Country
Таблица работала, пока я не добавил следующую строку: SUM (orders.OrderValue) WHERE orders.OrderDate> = curdate () - интервал 1 год как Last 12 Month Spend
Мне нужно, чтобы этот оператор WHERE применялся только к этой строке, а не ко всей таблице, поскольку она удалит результаты.
Большое спасибо заранее