我需要創建一個觸發器,它可以將兩個表中的兩個字段相乘,但我不知道如何去做,所以讓我們看看您能否幫助我。從兩個表中觸發乘法運算
兩個表,
產品(PRODUCT_NAME,價格)
訂單(PRODUCT_NAME(外鍵),units_ordered)
我需要添加一個字段的表乘以價格從產品訂單和units_orders從訂單,所以:total_price =價格(從產品)X units_ordered(從訂單)
在此先感謝,併爲我的英語不好。 Regards
我需要創建一個觸發器,它可以將兩個表中的兩個字段相乘,但我不知道如何去做,所以讓我們看看您能否幫助我。從兩個表中觸發乘法運算
兩個表,
產品(PRODUCT_NAME,價格)
訂單(PRODUCT_NAME(外鍵),units_ordered)
我需要添加一個字段的表乘以價格從產品訂單和units_orders從訂單,所以:total_price =價格(從產品)X units_ordered(從訂單)
在此先感謝,併爲我的英語不好。 Regards
你根本不需要觸發器。而且您也不需要爲總價格添加另一列,因爲它已經是多餘的了。
如果您想要他們的總價格,只需在投放記錄期間進行。例如
SELECT a.Product_Name,
a.Price,
b.units_ordered,
a.Price * b.units_ordered AS TotalPrice
FROM Products a
INNER JOIN Orders b
ON a.Product_name = b.Product_name
,或者你可以創建一個VIEW
出你SELECT
聲明。例如,
CREATE VIEW ProductOrder
AS
SELECT a.Product_Name,
a.Price,
b.units_ordered,
a.Price * b.units_ordered AS TotalPrice
FROM Products a
INNER JOIN Orders b
ON a.Product_name = b.Product_name
,並從視圖中選擇,
SELECT * FROM ProductOrder
但如果你真的想添加另一列,依舊會觸發不是一個選項。您只需要使用UPDATE
更新該列的值並加入兩個表。假設您的新列在表'訂單'上調用TotalPrice
。
UPDATE Orders a
INNER JOIN Products b
ON a.Product_name = b.Product_name
SET a.TotalPrice = a.units_ordered * b.Price
你能顯示一些代碼嗎?你是否知道如何編寫觸發器,或者你只是不確定要做這個特定的任務? – siride
你需要觸發器還是視圖?你是否希望在表格順序中有一個字段,當插入一條記錄時會有乘法的結果? – koriander
我已經讀了一些關於觸發器,但不知道如何在這個例子中使用它們,所有的代碼都不是英文的,但這並不重要,唯一重要的表格就是那兩個。 :S – Tennosuke