0
好吧,所以我需要创建一个after插入触发器,需要使用if elseif和elseif。 if,elseif,elseif需要基于从其他3个数据库表中获取的查询数据。我想知道是否有一种方法可以做到这一点,而不必在开始时运行所有三个查询。Mysql触发if语句和变量
BEGIN
SET @t3 = (SELECT team_id FROM team_trans WHERE key1 = NEW.trans_id LIMIT 1);
SET @t2 = (SELECT team_id FROM team_assignments WHERE team_assignments.misc_id = NEW.STORE_ID AND team_assignments.type = 1);
SET @t1 = (SELECT team_id FROM team_assignments WHERE team_assignments.misc_id = NEW.CUSTOMER_ID AND team_assignments.type = 0);
IF (@t3) THEN
INSERT INTO team_trans (team_id, trans_id, type, misc_id) VALUES (@t3, NEW.id, 0, 1);
ELSEIF (@t1) THEN
INSERT INTO team_trans (team_id, trans_id, type, misc_id) VALUES (@t1, NEW.id, 0, 1);
ELSEIF (@t2) THEN
INSERT INTO team_trans (team_id, trans_id, type, misc_id) VALUES (@t2, NEW.id, 0, 1);
END IF;
END