MYSQL插入触发器(插入多个值)

时间:2018-05-28 08:21:31

标签: mysql sql

我有一个用例

表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

1 个答案:

答案 0 :(得分:0)

您可以使用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;
|