请看看下面的查询触发器:使用条件语句
DELIMITER $$
CREATE TRIGGER `Ongoing_Portfolio_AINS` AFTER INSERT ON `Ongoing_Portfolio` FOR EACH ROW
BEGIN
UPDATE Portfolio
SET Invest_Amount = New.Investment_Value,
Cash_Value = New.Cash_Value,
Date_Of_Last_Update = New.Updated_Date
WHERE idPortfolio = New.idPortfolio;
INSERT INTO Ongoing_Fees (currentDate, Ongoing_Gross_Fee,Ongoing_Vat, Updated_Date, idPortfolio)
SELECT current_timestamp,
(New.Investment_Value+New.Cash_Value)*(p.Ongoing_Gross_Fee/100),
(((New.Investment_Value+New.Cash_Value)*(p.Ongoing_Gross_Fee/100))*(p.Ongoing_eee_Fee/100))*0.2,
New.Updated_Date,
New.idPortfolio
FROM Portfolio p
WHERE p.idPortfolio = New.idPortfolio;
END;
然而,在这里,Ongoing_Vat
仅适用于具有p.Vat = true
,否则是NULL
。我如何添加这个条件语句,以便Ongoing_Vat
将被正确计算?
情况下,当p.vat = true,那么ongoing_vat否则返回null结束了吗? – Twelfth 2014-09-30 16:42:23
@paqogomez:我如何添加条件语句? – 2014-09-30 16:45:52
@Telfelf:我不明白。你能否将这部分添加到我的代码中?我对SQL的东西有点新鲜。 – 2014-09-30 16:47:40