MySQL触发器乘以值

时间:2016-11-21 21:47:52

标签: mysql triggers

我正在尝试创建一个将sales_price字段乘以-1的触发器,sales表就像这个事务类型一样,它有varchar R表示退款,S表示销售。

这是我试图创建的触发器:

delimiter $$     
CREATE trigger refund_negative before insert on sale 
for each row    
begin
set new.SALE_PRICE = new.SALE_PRICE *(-1)   
where TRA_TYPE = 'R';
end;   
delimiter $$

1 个答案:

答案 0 :(得分:1)

试试这个:

CREATE TRIGGER `refund_negative` BEFORE INSERT ON `sales` FOR EACH ROW BEGIN
IF NEW.TRA_TYPE='R' THEN
    SET NEW.price = NEW.price * -1;
END IF;
END

所以基本上它只是测试TRA_TYPE是否等于' R'如果是,NEW.price乘以负数。