我有Mysql table1
,并在插入新行时创建触发器以创建另一个table2
。这项工作正常,现在我有两个相同的表:)。我想在创建第二张表时进行一些更改(条件)。
CREATE TRIGGER `listener` AFTER INSERT ON `table1` FOR EACH ROW
INSERT INTO `table2` (column1, column2,column3, column4) VALUES (new.column1, new.column2, new.column3, new.column4)
我正在尝试在创建table2
之前将一些条件包括在内。
类似这样的东西:
INSERT INTO table2 (column1, column2,.......) VALUES (new.val1, new.val2....)
WHERE column1 LIKE '%name1%' OR LIKE '%name2%'
答案 0 :(得分:0)
您可以使用INSERT SELECT
中的dual
:
INSERT INTO table2
(column1,
column2,
...)
SELECT new.val1,
new.val2,
...
FROM dual
WHERE new.val1 LIKE '%name1%'
OR new.val1 LIKE '%name2%';
或者只是一个IF
:
IF new.val1 LIKE '%name1%'
OR new.val1 LIKE '%name2%' THEN
INSERT ...;
END IF;