SQL SeErver: оператор INSERT, вычислить два значения столбца

У меня есть три таблицы:

  1. Voucher_Codes (Amount_Used)
  2. Подарочные сертификаты (сумма)
  3. Order_Header (Order_Voucher_Amount)

Я хочу вставить данные из столбца Voucher_Codes в Order_Header, Но мне нужно сделать этот расчет, прежде чем я смогу объединить данные:

3 = 2 - 1

Как я могу это сделать, и, если возможно, я могу сделать это, затем удалить Voucher_Codes позже, не затрагивая мои наборы данных?

1 ответ

Решение

Попробуйте этот код:

SELECT *,
(SELECT (Voucher_Codes.Amount_Used - Gift_Vouchers.Amount) AS Order_Voucher_Amount
FROM Voucher_Codes
JOINT Gift_Vouchers ON Voucher_Codes.KEY = Gift_Vouchers.KEY)
FROM Order_Header
JOINT Voucher_Codes ON Voucher_Codes.KEY = Order_Header.KEY 

Затем вы можете вставить новые данные в эту скорректированную таблицу.

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