Каков наилучший подход для вставки вычисляемого столбца, сгруппированного по идентификатору, в другой столбец, в котором этот идентификатор совпадает?
У меня есть этот запрос:
SELECT DISTINCT cs.customerNumber, cs.totalOrderCost as paymentDue,
SUM(p.amount) as paymentMade
FROM customerSales cs LEFT OUTER JOIN payments p
ON cs.customerNumber = p.customerNumber
GROUP BY cs.customerNumber;
, который возвращает customerNumber, paymentDue , paymentMade, рассчитывается правильно.
В таблице customerSales есть два столбца: customerNumber и totalOrderCost. Я хочу добавить столбец "paymentMade" (суммированный из столбца платежей и сгруппированный по customerNumber) в таблицу customerSales.
Этот подход:
ALTER TABLE customerSales
ADD COLUMN paymentMade DECIMAL;
INSERT INTO customerSales(paymentMade)
SELECT SUM(p.amount) as paymentMade
FROM payments p
GROUP BY p.customerNumber;
выдает ошибку "Поле customerNumber hasn не имеет значения по умолчанию ".
Любая помощь будет оценена. Спасибо!