我有一個觸發器,在他內部我宣佈了兩個變量:數量和價格。數量是INT類型,價格是DECIMAL類型(10,2)。這些變量的值由SELECT查詢設置。那很好。現在我想把這兩個變量相乘,這樣我就可以得到總金額。如何計算mysql觸發器內的兩個變量?
TOTAL_AMOUNT =數量*價格
簡化代碼(不工作就在這兒只是爲了更好地描述我的問題):
DROP TRIGGER calculate;
DELIMITER $$
CREATE TRIGGER calculate
AFTER INSERT ON order_table
FOR EACH ROW
BEGIN
DECLARE quantity INT;
DECLARE price INT;
SELECT quantity, price INTO @quantity, @price FROM product;
INSERT INTO order_details SET total_amount = @quantity * @price;
END$$
DELIMITER ;
有了這個代碼,我得到空的結果。 我正在使用MySQL/MariaDB。
我知道選擇是不正確的,我把它放在這裏只是爲了我需要做的一個例子,它的無關,作爲整個觸發器,只是想知道如何計算變量時,他們是通過select ..但作爲你提到你的答案,如果我只是使用本地變量,我得到了良好的resut – bobby
我們不是很高興發佈的代碼有問題,你知道的問題,你沒有在你的問題中提及這些問題! – Shadow