我有一个用例
表1有如下数据
**CID** **COMPANY**
1 CompanyA
2 CompanyB
3 CompanyC
表2有如下数据
**ID****COMPANY****PERSON**
1 CompanyB Sachin
2 CompanyB Kohli
3 CompanyC Dhoni
4 CompanyA Raina
5 CompanyA Shikar
数据应该插入到表3中,每当表1中发生插入时,我需要根据COMPANY从表2中选择值并将数据插入到表3中,如下所示
表3
**ID****CID****PERSON**
1 1 Raina
2 1 Shikar
3 2 Sachin
4 2 Kohli
5 3 Dhoni
最佳答案
您可以使用以下解决方案,使用 CREATE TRIGGER
:
DELIMITER |
CREATE TRIGGER insert_table3 AFTER INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table3 (CID, PERSON)
SELECT table1.CID, table2.PERSON
FROM table1 INNER JOIN table2 ON table1.COMPANY = table2.COMPANY
WHERE CID = NEW.CID
GROUP BY table2.PERSON;
END;
|
关于MYSQL 插入触发器(插入多个值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50561990/