使sql值等于insert上另一个表中的另一个值

时间:2014-01-11 04:01:33

标签: mysql sql

基本上我有这两个表。

enter image description here

我想要做的是第二个表中的 INSERTION 内容(表2)我希望它在 NULL 的值用表1中的id填充其中由表1中的part1 / part2和表2中的part1 / part2形成的对保持不变(请注意,他们可以在它们之间进行交换)。这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:0)

你可以做的是在Insert上创建一个触发器,如下面的

CREATE TRIGGER grabIdFromTable1
BEFORE INSERT ON table2
FOR EACH ROW
BEGIN
  SET NEW.id = (SELECT id FROM table1 WHERE part1 = NEW.part1
                                        AND part2 = NEW.part2
                );

END//

请参阅此sqlFiddle